我的代码输出文件中出现奇怪的字符

问题描述

我在dev-c ++上的控制台上获得了正常的输出结果,但是代码将固定字符(即UTF16-LE格式)写入a_b_768.txt文件。奇怪的是:当我对另一个代码执行相同的文件输出过程时,我在文件中得到了正常的(UTF8)结果,而没有任何问题。

为什么我为输出文件获取一个代码的UTF16输出文件,而为另一个代码获取UTF8的为什么?编译器是相同的,标头是相同的,过程是相同的,但是一个代码将UTF 16写入文件,而另一个代码将UTF8写入文件。我只是添加以下问题的代码:

我该如何解决?有什么方法可以修改代码以在文件中获取UTF8输出?

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

int main(){
    int a[768];
    int b[768];
    int i;
    
    /////////////////////////////////////////writing into a_b_768.txt
    FILE *outFile;
    outFile = fopen("a_b_768.txt","w");

    if (outFile == NULL){
        printf("Cannot Open File\n");
        exit (0);
    }   

    for ( i = 0;i < 768;++i)
    {
        a[i]=rand()%3;
        fprintf(outFile,"%d ",a[i]);
    }   
    
    //fprintf(outFile,"\n\n");
    for ( i = 0;i < 768;++i)
    {
        b[i]=rand()%3;
        fprintf(outFile,b[i]);
    }
    
    // fprintf(outFile,"\n\n\n\n");
    fclose(outFile);
    
    ///////////////////////////////////printing on console
    for ( i = 0;i < 768;++i)
    {
        a[i]=rand()%3;
        printf("%d ",a[i]);
    }   
    
    printf("\n\n");
    
    for ( i = 0;i < 768;++i)
    {
        b[i]=rand()%3;
        printf("%d ",b[i]);
    }   
    
}   

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)

相关问答

依赖报错 idea导入项目后依赖报错,解决方案:https://blog....
错误1:代码生成器依赖和mybatis依赖冲突 启动项目时报错如下...
错误1:gradle项目控制台输出为乱码 # 解决方案:https://bl...
错误还原:在查询的过程中,传入的workType为0时,该条件不起...
报错如下,gcc版本太低 ^ server.c:5346:31: 错误:‘struct...