#include<stdio.h>
#include<string.h>
#pragma warning(disable:4996)
struct infomation
{
char array1[100];
}info[2][5];
int main()
{
FILE* stream1;
FILE* stream2;
FILE* stream3;
stream1 = fopen("text.txt","a");
stream2 = fopen("text.txt", "r");
int i=0;
int j = 0;
char k;
while (1)
{
printf("문자입력:");
gets(info[0][i].array1);
fflush(stdin);
fputs(info[0][i].array1, stream1);
i++;
printf("ㄱ?");
scanf("%c", &k);
fflush(stdin);
switch (k)
{
case 'Y':
case 'y':
continue;
case 'N':
case 'n':
break;
}
break;
}
while (j<i)
{
strcpy(info[1][j].array1, info[0][j].array1);
j++;
}
stream3 = fopen("text.txt", "w");
j = 0;
while (j<i)
{
if (j = 2)
{
j++;
continue;
}
fputs(info[1][j].array1,stream3);
j++;
}
return 0;
}
데이터를 받으면 처음 파일에 옮겨놨다가
그걸 임시버퍼에다가 옮긴후
특정 번호에 해당하는 문자배열을 제외하고 (코딩할때는 2번으로 고정해놨습니다.)
새롭게 파일에다가 적는 프로그램을 짜고 있습니다.
stream3 를 통해서 "w" 을 선언하면 텍스트 파일에 있는 기존의 데이터는 모두 사라지고 새롭게 써지는 걸로 아는데
프로그램을 다 돌리고 나서도 특정 부분이 빠지지 않고 그대로 네요
이거 뭘 잘못한걸까요?
프로그램자체는 그냥 C만으로 구현해보고 있습니다.