c - 用 C 编写一个 .txt 文件

标签 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,)。

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

最佳答案

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

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

请注意模式参数中的“t”。

关于c - 用 C 编写一个 .txt 文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30554520/

相关文章:

git - 为什么 Git 引用没有文件扩展名

c - 反转二进制文件会向其添加位而不是反转

Python3-在函数内调用 exec(open().read()) 的问题

c - 什么会导致指针分配出现段错误?

c - Windows C 对话框大小调整器

使用递归创建二叉树时调用堆栈错误

c++ - : Expected constructor,析构函数错误,或者 '.' token之前的类型转换 - 理解fstream

java - 用Java编写UTF-8文件

c++ - 使用位操作将十六进制转换为十进制

c - 从 Postgres C 函数返回一个数组?