请教大家一个关于文件读取的问题
我想读一个文件,数据格式是这样的:baihelunwen11 5283727 baihelunwenwang
百合论文网2 zsdqy5283727 baihelunwenwang
baihe 5283727 baihelunwenwang2
baiheren2009 luoshun baiheluoshun
我要取出中间那一列,写入文件
我编的程序怎么也过不去。
我的思路:先用fgets按行来读取,放入数组arr1中;然后对数组arr1的每一个元素用sscanf来读取。但是程序过不去,请指教。
我的程序写在这里:
程序代码:
#include <stdio.h>
#include <stdlib.h>
int main()
{
int i=0,j;
FILE *fp1,*fp2;
char arr1[800000],arr2[5];
if(NULL==(fp1=fopen("sourceData.txt","r")))
{printf("File no1 wrong!\n");}
if(NULL==(fp2=fopen("destData.txt","w+")))
{printf("File no2 wrong!\n");}
while(!feof(fgets(arr1[i],sizeof(arr1),fp1))))
{
//按行读入数据
i++;
}
int num=i-1;
for(j=0;j<num;j++)
{
sscanf(arr1,"%s %s %s",&arr[1],&arr[2],&arr[3]);
fprintf(fp2,"%s\n",arr[2]);
}
return 0;
}









