Page 243 고등학교 프로그래밍 교과서
P. 243
실습하기 4 파일 읽어오기
폼에 [가져오기] 버튼을 생성하고 버튼을 클릭하면 파일에 저장된 성적 자료를 읽어서 [텍스
트 박스]에 출력하는 프로그램을 작성해 보자.
1단계 화면 디자인하기
[텍스트 박스에 표시할 내용]
파일 읽어오기
가져오기 textBox 1,손오공,90,89,87,98,90,454,90.8
2,사오정,85,90,74,90,85,424,84.8
3,저팔계,90,95,98,95,95,473,94.6
2단계 프로그램 코딩하기
01 private void button2_Click(object sender, EventArgs e) {
02 byte bunHo;
03 string irum, temp ;
04 byte[ ] score=new byte[5]; 변수 선언
05 int sum;
06 float average;
07 BinaryReader br = new BinaryReader(new FileStream
08 ("C:\\data\\TestData.txt", FileMode.Open)); 읽기 모드로 파일 오픈
09 temp = "";
10 for (int i = 0; i < 3; i++) { 번호를 읽어서 변수(bunHo)에 보관
11 bunHo = br.ReadByte( );
이름을 읽어서 변수(irum)에 보관
12 irum = br.ReadString( );
13 temp + = bunHo.ToString( ) + ","; 번호와 이름을 문자열
14 temp + = irum + ","; 변수 temp에 결합 프로그램을
15 for (int j = 0; j < 5; j++) {
과목별 점수를 읽어서 배열(score)에 보관 실행하기 전에 먼저
16 score[j] = br.ReadByte( ); "C:\data\TestData.txt"
17 temp + = score[j].ToString( ) + ","; 점수를 문자열 변수 temp에 결합 파일이 존재해야 합니다.
18 }
19 sum = br.ReadInt32( ); 총점을 읽어서 변수(sum)에 보관
20 average = br.ReadSingle( ); 평균을 읽어서 변수(average)에 보관
21 temp + = sum.ToString( ) + ",";
22 temp + = average.ToString( ) + "\r\n";
23 }
총점과 평균을 문자열
24 textBox1.Text = temp;
25 br.Close( ); 변수 temp에 결합
26 } 문자열 변수 temp를 텍스트 박스에 출력
3단계 프로그램 실행하기
파일에서 읽은 자료가 숫자이면 문자열로 변환한 후 변수 temp에 추가하고, 한 학
생의 자료 마지막에는 줄바꿈("\r\n") 문자를 추가한 후 마지막으로 temp의 내용을
text Box1에 출력한다.
3. 프로그래밍의 실제 II 241
(책)2015프로그래밍-교과서3차심의본 본문.indb 241 2017-09-05 오후 4:17:05