您的位置:威尼斯官方网站 > 威尼斯官方网站 > 威尼斯官方网站也只能乱码显示出来

威尼斯官方网站也只能乱码显示出来

发布时间:2019-11-21 16:17编辑:威尼斯官方网站浏览(89)

    转自:

    在windows平台下,使用系统的记事本以UTF-8编码格式存款和储蓄了三个文件文件,然则出于Microsoft开垦记事本的协会利用了叁个特别好奇的一举一动来保存UTF-8编码的文书,它们布鼓雷门地在各个文件最早增加了0xefbbbf(十二进制卡塔尔国的字符,所以大家就能遇见不菲不得要领的题目,比方,网页第生机勃勃行恐怕会展现一个“?”,明明正确的顺序一编写翻译就报出语法错误,等等。

    上边为大器晚成段测量试验程序,由记事本编辑的公文文件引致文件开头前八个字符乱码。

    威尼斯官方网站 1

    #include <stdio.h>
    #define MAX_LEN 100
    
    int main()
    {
        char strLine[MAX_LEN];
        int i = 0;
        memset(strLine,0x0,MAX_LEN);
    
        FILE * fp;
        fp = fopen("eng_query.txt","r");
        if(NULL == fp)
        {
            printf("open file fail.n");
            return -1;
        }
    
        while(fgets(strLine,MAX_LEN,fp))
        {
            printf("str = %s",strLine);//将每行字符串打印出来
            for(i=0; i<strlen(strLine); i++)//将每各字符串中的字符以十六进制格式打印出来
            {
                printf("%x  ",strLine[i]);
            }
            printf("nn");
        }
        fclose(fp);
        return 0;
    }
    

    威尼斯官方网站 2

     

    输入文件:

    威尼斯官方网站 3

    tsinghua press
    mp18
    evaluating method for the double image
    jiaoyuxvshi
    balancing mechanism
    hthr
    amplification
    bionic optimization algorithm
    a r l
    tcb
    

    威尼斯官方网站 4

     

    输出文件:

    威尼斯官方网站 5

    str = 锘縯singhua press
    ffffffef  ffffffbb  ffffffbf  74  73  69  6e  67  68  75  61  20  70  72  65  73
      73  a
    
    str = mp18
    6d  70  31  38  a
    
    str = evaluating method for the double image
    65  76  61  6c  75  61  74  69  6e  67  20  6d  65  74  68  6f  64  20  66  6f
    72  20  74  68  65  20  64  6f  75  62  6c  65  20  69  6d  61  67  65  a
    
    str = jiaoyuxvshi
    6a  69  61  6f  79  75  78  76  73  68  69  a
    
    str = balancing mechanism
    62  61  6c  61  6e  63  69  6e  67  20  6d  65  63  68  61  6e  69  73  6d  a
    
    str = hthr
    68  74  68  72  a
    
    str = amplification
    61  6d  70  6c  69  66  69  63  61  74  69  6f  6e  a
    
    str = bionic optimization algorithm
    62  69  6f  6e  69  63  20  6f  70  74  69  6d  69  7a  61  74  69  6f  6e  20
    61  6c  67  6f  72  69  74  68  6d  a
    
    str = a r l
    61  20  72  20  6c  a
    
    str = tcb
    74  63  62  a
    

    威尼斯官方网站 6

     

    咱俩得以窥见文件开端多少个字符乱码,种种汉字占用五个字符,由此第四个字符本来为‘t’,也只好乱码展现出来。

    由此,能够运用Notepad++代替记事本。需求将Notepad++的暗中认可编码设置为UTF-8 without BOM就能够;

    威尼斯官方网站 7

    本文由威尼斯官方网站发布于威尼斯官方网站,转载请注明出处:威尼斯官方网站也只能乱码显示出来

    关键词: