项目场景:
生成随机二进制数,进行TXT文件操作时,出现方框乱码
问题描述
#include <stdlib.h>
#include <stdio.h>
int main(void)
{
int i;
unsigned char ram;
FILE *fp;
fp = fopen("D:/programone/random number/d_in.txt", "w");
for (i = 0;i<767;i++)
{
ram = rand()%2;
printf("%d",ram);
fputc(ram,fp);
}
fclose(fp);
printf("录入完成");
return 0;
}
原因分析:
提示:可能是因为fprintf函数对数据的类型有了明确的定义,例如%d,%s等,使得TXT文档能够识别。
解决方案:
提示:将fputc函数换为fprintf函数即可防止方框乱码
#include <stdlib.h>
#include <stdio.h>
int main(void)
{
int i;
unsigned char ram;
FILE *fp;
fp = fopen("D:/programone/random number/d_in.txt", "w");
for (i = 0;i<767;i++)
{
ram = rand()%2;
printf("%d",ram);
fputc(ram,fp);
}
fclose(fp);
printf("录入完成");
return 0;
}