티스토리 뷰

프로그래밍/java

Java - Scanner 입력받기

박스여우 2015. 4. 4. 22:15

Java - Scanner

 

자바의 입력받는 함수 scanner!

java 는 입력을 받기위해서는 Scanner 선언을 해주어야하는데요,

 

c언어의 scanf 처럼 입력을 받는방법을 알아보겠습니다.

 

 

 

 

System.in

String inputs;

Scanner input = new Scanner(System.in);

inputs = input.next();

 

위의 Scanner input = new Scanner(System.in);은

input이라는 이름의 스캐너를 생성하는 것입니다.

 

Scanner(System in)은

Scanner 메소드를 통해 입력받는 방식을 정해주는것입니다.

 

System.in은 말그대로 시스템적으로 입력받는다

콘솔창으로 입력받는다는 뜻입니다.

 

 

두번째 inputs = input.next();에서

next()는 한 단어를 입력받는다는 뜻입니다.

한단어는 띄어쓰기를 통해 구별됩니다.

 

만약 test word 를 치게되면

test 까지만 입력을 받게되는것입니다.

 

만약 한문장을 입력받고 싶으시면

nextLine();으로 작성하시면 되고,

 

int형을 입력받고싶으면 nextInt();로 작성하시면 됩니다.

 

이외에도 다양한 next 메소드 들이 있으니 한번 찾아보시길 바랍니다.

input. 까지만 입력해도 이클립스는 다양한 보기를 보여줍니다.

 

 

 

 

FILE Scanner

이번에는 파일스캐너에 대해서 알아보겠습니다.

 

 

try{//파일 열기를 시도한다
   FileInputStream ip = new FileInputStream("word.txt"); //txt파일 오픈 다른경로가 지정되지 않을시 소스파일이 있는곳에 생성
   
   Scanner s = new Scanner(ip); //txt 파일 읽어오는 스캐너 생성
   
   
   
   while(true){
    if(s.hasNext()){    // hasNext()를 통해 요소가 남아있는지 확인함 남아있으면 true가 반환됨
     text[count] = s.next();
     korean[count] = s.next();
     count+=1;
     
     //요소를 읽어와서 저장 //next()는 한단어를 읽어오고, nextLine()은 한 문장을 읽어온다.
    }else{
     break;
    }
  }
    
   
   }catch(Exception e){//오류를 잡아낸다 ex)파일이 없을시
    e.printStackTrace();
  }

 

위의 코드는 영어단어 암기프로그램 소스의 일부분입니다.

FILE을 생성한뒤 생성한 file 에서 입력을받는 구문입니다.

 

파일을 열때는 반드시

try 문을 사용하여

catch(Exception e)로 오류를 잡아줘야

프로그램 작동시 파일이 없는 경우의 심각한 오류발생을 없엘수있습니다.

 

 

FileInputStream ip = new FileInputStream("word.txt");

입력받는 파일스트림을 만든뒤 word.txt로 지정을 해줍니다.

 

Scanner s = new Scanner(ip);

입력받는 방식을 File인 ip 인스턴스로 지정합니다.

 

여기까지만 완료하면 끝난겁니다!

후의 사용방법은 위의 System.in의 방법과 다를게 없습니다.

 

String inputs = s.next();

를 이용해서 파일에 저장되있는 한단어를 입력받거나

String inputs = s.nextLine();

을 이용해서 한 라인을 입력받으실수 있습니다.

 

'프로그래밍 > java' 카테고리의 다른 글

Java - 객체지향(7) package & import  (0) 2015.04.13
Java - JOptionpane 입력받기 - 2  (0) 2015.04.05
JAVA - 객체지향(6)  (0) 2015.04.04
java - 객체지향(5)  (0) 2015.04.03
JAVA - 객체지향(4) 생성자  (0) 2015.04.03
댓글
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2024/04   »
1 2 3 4 5 6
7 8 9 10 11 12 13
14 15 16 17 18 19 20
21 22 23 24 25 26 27
28 29 30
글 보관함