请使用表情符号阅读文本文件并打印出来

kar*_*arx 5 c unicode text file-handling emoji

输入 - >

输出 - >≡ƒÿé≡ƒÿé

我只想保持表情符号的原始状态.

我所做的就是这个

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

int main()
{
    char ch;
    FILE *fp;

    fp = fopen("test.txt","r");
    while( ( ch = fgetc(fp) ) != EOF )
        printf("%c",ch);

    fclose(fp);
return 0;
}
Run Code Online (Sandbox Code Playgroud)

dop*_*ime 1

在 Unicode 编码中,表情符号必须占用超过 1 个字节。因此,在这种情况下逐字节打印将无济于事。如果将输出重定向到文件,您可能会得到与文件几乎相同的结果。

您可以尝试通过更改语言环境(在 Linux 上)来打印字符串,也可以尝试在 Windows 上使用 wprintf(请记住转换为宽字符串)。