2011-11-17 6 views
1

Java에서 I/O를 수행하는 여러 가지 방법이있는 것 같습니다. 어떻게 하나를 사용할 것인지 결정합니다. 나는 다음과 같은 두 가지 방법으로 표준 입력을 통해 사용자의 입력을 받아 들일 수Java에서 다음 행 읽기

:

방법 1 :

BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); 
    String input = ""; 
    try{ 
     System.out.println("Enter: "); 
     input = br.readLine(); 

    }catch(IOException e) 
    { 
     e.printStackTrace(); 
    } 

방법 2 : 예를 들어

 Scanner sc = new Scanner(System.in); 
     System.out.println("Enter Scanner: "); 
     input = sc.nextLine();  
     System.out.println(input); 

나는 확신 입력을 읽을 수있는 다른 방법이있을 수도 있습니다. 특정 종류의 작업 (파일, 소켓, 표준 입력에서 읽기)에 사용할 방법을 선택할 때 따라야 할 지침이 있습니까?

+1

- 가능한 한 간단하게하십시오. – BalusC

+0

@BalusC 당신은 그 마지막 S를 잊어 버렸습니다 : P –

+0

가장 간단한 방법을 찾으려면, 나는 모든 방법을 알고 싶습니다 :) –

답변

4

가이드 라인은 필요한 API가있는 클래스를 사용한다는 것입니다. 그냥 줄을 읽고 있다면, BufferedReader.readLine(). 당신이 토큰을 읽고 당신을 위해 회심 시키길 원한다면, Scanner. 이진 데이터를 읽는 경우 DataInputStream. 물건을 읽는다면 ObjectInputStream.readObject(). XML 파서 인 XML을 읽는 경우 등등. 당신이 자바를 읽는 경우에, JavaCC ;-)

2

Java의 입력 소스에서 읽는 방법은 해당 소스에서 읽을 계획 인 데이터. 평범한 텍스트/원시 타입을 읽고 싶다면 Scanner이 좋고 간단하지만 소스에서 전체 객체를 읽을 계획이라면 ObjectInputStream을 사용할 수 있습니다.

소스를 원하면 Java I/O Streams입니다.