System 클래스의 in 정적 필드를 사용하여 콘솔에서 키보드의 데이터를 입력받을 수 있다.
in 정적 필드는 InputStream 타입이다.
따라서, 다음과 같이 참조할 수 있다.
InputStream is = System.in;
이제, read() 메소드를 사용하면 콘솔로부터 데이터를 읽어올 수 있다.
InputStream 타입이기 때문에 현재는 바이트 단위로 읽어온다.
라인 단위로 문자열을 읽고 싶다면,
위의 과정을 통해 라인 단위로 문자열을 읽어올 수 있다.
InputStream is = System.in;
Reader reader = new InputStreamReader(is);
BufferedReader br = new BufferedReader(reader);
br.readLine();
Scanner 클래스를 사용하면 보조 스트림을 연결하지 않고도 문자열을 라인 단위로 입출력 할 수 있다.
Scanner scanner = new Scanner(System.in);\
scanner.nextLine();
System 클래스의 out 정적 필드를 사용하여 콘솔에서 모니터로 데이터를 출력할 수 있다.
등의 메소드를 제공한다.
File 클래스는 파일 및 폴더의 정보를 제공한다.
File file = new File("C:/temp/test.txt");
// 파일이 존재하지 않는 경우
file.createNewFile(); // 새로운 파일 생성
file.mkdir(); // 새로운 폴더 생성
file.mkdirs(); // 경로상에 없는 모든 폴더 생성
// 파일이 존재하는 경우
file.delete();
file.canRead(); // read 가능한지 여부 확인
file.canWrite(); // Write 가능한지 여부 확인
file.canExecute(); // Execute 가능한지 여부 확인
file.getPath();
file.getName();
.
.
.
File 객체를 스트림 생성자의 인수로 줘서, 파일에 출력 또는 파일로부터 입력을 받을 수 있다.
File file = new File("C:/temp/test.txt");
InputStream is = new FileInputStream(file);
OutputStream os = new FileOutputStream(file);
혼자 공부하는 자바