데이터 파일의 내용이 아래와 같고
990001addx154CAC 17 29 16 49 43
읽고 쓰는 형식은 다음과 같습니다.
%6ld %s %3d %c %c %c %3d %3d %3d %3d %3d
읽고 쓰는 형식에는 데이터들 마다 공백이 있군요.
데이터 파일의 내용을 바꾸어야겠군요.
990001 addx 154 C A C 17 29 16 49 43
이렇게.... 각 데이터마다 공백으로 분리해야
님이 코딩하신 읽고쓰는형식과 일치 하겠습니다.
동철이 님이 쓰신 글 :
: 어떤 텍스트 파일을 읽어 출력하려고 하는데 시험삼아
: 파일의 첫 라인을 읽어 들이도록 작성했는데요...결과가 서식대로
: 출력되지 않습니다.
:
: 읽어들일 파일의 첫 라인은 아래와 같습니다.
:
: 990001addx154CAC 17 29 16 49 43
:
:
: 이걸 출력하려고 제가 생각해 낸 구문은 다음과 같은데요...
:
: #include <stdio.h>
: FILE *IN;
: struct tag{
: long int stuno;
: char name[5];
: int g_score;
: char jido, sung, tong;
: int kor, eng, mat, sci, his;
: };
: struct tag input[1];
: void main() {
: int i = 0; /* 이건 연습삼아... */
: IN = fopen("res0105.txt", "r");
: fscanf(IN, "%6ld %s %3d %c %c %c %3d %3d %3d %3d %3d",
: &input[i].stuno, &input[i].name, &input[i].g_score, &input[i].jido,
: &input[i].sung, &input[i].tong, &input[i].kor, &input[i].eng,
: &input[i].mat, &input[i].sci, &input[i].his);
: printf("%6ld %s %3d %c %c %c %3d %3d %3d %3d %3d\n",
: input[i].stuno, input[i].name, input[i].g_score, input[i].jido,
: input[i].sung, input[i].tong, input[i].kor, input[i].eng,
: input[i].mat, input[i].sci, input[i].his);
: fclose(IN);
: }
:
: 제가 생각하기로는 fscanf나 printf를 썼을 때 서식이 잘못 설정되었나 싶은데요. 정확하게 바로 출력하려면 어떻게 바꾸어야 할까요?
:
|