在C

时间:2015-05-31 06:25:10

标签: c file

我试图以某种格式写入文件,但是当我在记事本中打开文件时,它并不是我想要的。如果我减小窗口的大小(对于记事本),它会变得像我想要的那样,但如果我最大化一点,格式就会改变。

生成文件的代码是:

#include <stdio.h>
#include <stdlib.h>

void main(){
    FILE *fp,*fp2;
    int i=0;
    int num1,num2,num3,num4,num5,num6,num7,num8,num9,num10,num11,num12;
    fp=fopen("treino01.bin","r");
    fp2=fopen("treino02.txt","w");

    fprintf(fp2,"ESTC\tNDEP\tRENDA\tTIPOR\tVBEM\tNPARC\tVPARC\tTEL\tIDADE\tRESMS\tENTRADA\tCLASSE\n",num1,num2,num3,num4,num5,
                    num6,num7,num8,num9,num10,num11,num12);
    while( (fscanf(fp, "%d\t%d\t%d\t%d\t%d\t%d\t%d\t%d\t%d\t%d\t%d\t%d\n", &num1, &num2, &num3, &num4, &num5, 
            &num6, &num7, &num8, &num9, &num10, &num11, &num12))!= EOF ){

        printf("%d,\t%d,\t%d,\t%d,\t%d,\t%d,\t%d,\t%d,\t%d,\t%d,\t%d,\t%d,\n",num1,num2,num3,num4,num5,num6,num7,num8,num9,num10,num11,num12);
        fprintf(fp2,"%d,\t%d,\t%d,\t%d,\t%d,\t%d,\t%d,\t%d,\t%d,\t%d,\t%d,\t%d,\n",num1,num2,num3,num4,num5,num6,num7,num8,num9,num10,num11,num12);


    }

    fclose(fp);
    fclose(fp2);
}

第一个文件文件如下:

12个字段,每个字段表示为数字,它是一个表格。

第二个文件只是读取第一个文件,并在每个数字(1,)之后插入逗号。

我需要做的只是在每个数字后插入一个逗号。

1 个答案:

答案 0 :(得分:1)

Windows上的行终止符的潜在问题。你可以试试这个:

fp2 = fopen("treino02.txt", "wt");

请注意&#34; t&#34;在mode参数中。