如何从C / txt中的TXT文件转换二进制文件,仅包括int /

时间:2013-12-06 17:45:46

标签: c binary int converter txt2tags

我要问的代码部分看起来像这样。 我的TXT包含1-20的数字除以。我想制作一个BINARY文件 从这个txt开始,这就是程序应该做的事情,但它只会感觉到内存污垢。你能告诉我我的代码是否有错误。

void txt_to_bin (void)                                 
{
FILE *ft,*fb;
int a;
ft = fopen("binadatok.txt","rt");
fb = fopen("versenyazonosito.dat","wb");
while (fscanf(ft,"%d\n",&a) != EOF)
{
    fprintf(fb,"%d\n");

}

}

2 个答案:

答案 0 :(得分:1)

在写入二进制文件时,您需要使用fwrite,而不是fprintf

fwrite(&a, sizeof(a), 1, fb);

答案 1 :(得分:0)

您没有在fprintf(fb,“%d \ n”)中提供任何值,您应该在此声明中提供a的输入。

void txt_to_bin (void)                                 
{
FILE *ft,*fb;
int a;
ft = fopen("binadatok.txt","rt");
fb = fopen("versenyazonosito.dat","wb");
while (fscanf(ft,"%d\n",&a) != EOF)
{
    fprintf(fb,"%d\n",a);

}

}

现在它会起作用。