본문 바로가기

IT일반과목/java

입출력2 (집공부)

package jongkyu.inout;


import java.io.IOException;

import java.io.InputStream;

import java.util.Scanner;


public class InOut {

Scanner sc = new Scanner(System.in);

public void ex1() { //콘솔에서 입력한 번호 알아내기

System.out.println("= = 메뉴 = = ");

System.out.println("1. 예금 조회");

System.out.println("2. 예금 출금");

System.out.println("3. 예금 입금");

System.out.println("4. 종료 하기");

System.out.print("메뉴를 선택하세요 : ");

InputStream is = System.in;//키보드 입력 스트림 얻기

char inputChar;

try {

inputChar = (char) is.read();

switch(inputChar) {

case '1': System.out.println("예금 조회 선택"); break;//character형이므로 작은 따옴표 꼭 써주자

case '2': System.out.println("예금 출금 선택"); break;//character형이므로 작은 따옴표 꼭 써주자

case '3': System.out.println("예금 입금 선택"); break;//character형이므로 작은 따옴표 꼭 써주자

case '4': System.out.println("종료"); return;//character형이므로 작은 따옴표 꼭 써주자

}

} catch (IOException e) {

// TODO Auto-generated catch block

e.printStackTrace();

}

}

}

=======================================================================



public void ex2() {//콘솔에서 입력한 한글 알아내기

InputStream is = System.in;


byte[] datas = new byte[100];

System.out.print("이름: ");

try {

int nameBytes = is.read(datas);

String name = new String(datas,0,nameBytes-2);

//끝에 2바이트는 Enter키에 해당하는 캐리지리턴(13)과 라인피드(10)이므로 문자열에서 제외시킴

System.out.print("하고 싶은말 : ");

int commentBytes = is.read(datas);

String comment = new String(datas,0,commentBytes-2);

//끝에 2바이트는 Enter키에 해당하는 캐리지리턴(13)과 라인피드(10)이므로 문자열에서 제외시킴

System.out.println("입력한 이름 : "+name);

System.out.println("입력한 하고 싶은말 : "+comment);

} catch (IOException e) {

// TODO Auto-generated catch block

e.printStackTrace();

}


}

======================================================================



public void ex3() throws Exception{//연속된 숫자, 영어, 한글 출력

OutputStream os = System.out;//프로그램이 데이터를 보낸다.

for(byte b=48;b<58;b++) {

os.write(b);

}

//아스키코드 48~57까지의 문자를 출력

os.write(13);//캐리지 리턴(13)을 출력하면 다음행으로 넘어간다.

for(byte b=97; b<123; b++) {

os.write(b);

}//아스키코드 97에서 122까지의 문자를 출력

os.write(13);//캐리지 리턴(13)을 출력하면 다음행으로 넘어간다.

String hangu1 = "가나다라마바사아자차카타파하";//문자열로 저장했다.

byte [] hangulBytes = hangu1.getBytes();//문자열인 hangu1을 바이트형태로 넣는다.

os.write(hangulBytes);//이걸 쓴다.

os.flush();

}

'IT일반과목 > java' 카테고리의 다른 글

자바 IO 수업2  (0) 2018.08.08
입출력3 (집공부)  (0) 2018.08.08
입출력1 (집공부)  (0) 2018.08.08
20180807 입출력 오늘 총 한것(학원)  (0) 2018.08.07
16진수 10진수 바꾸는 코드  (0) 2018.08.07