微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

C++ 从 .txt 读取、存储和比较汉字

如何解决C++ 从 .txt 读取、存储和比较汉字

我有一个包含汉字和罗马字母的 .txt,我需要提取每个字符并检查它是否是汉字(如果是,请将其与其他汉字进行比较),到目前为止我已经可以评估字符是否为汉字,使用

std::stringstream hexchar;
hexchar << std::hex << int(cc);
std::string mystr = "0x" + hexchar.str();

if (std::stoll(mystr,16) > std::stoll("0x3040",16)){
     .... IS KANJI ....
}
else
     .... ISN'T KANJI ....

我遇到的问题是从我的文本文件获取字符,它是一个使用 ANSI 的普通 .txt,到目前为止...

std::wifstream f("sample.txt");
wchar_t cc;
    while (f >> cc) {
        std::wcout << cc;

...我可以得到第一个罗马字母,但是一旦遇到汉字,它就会将后面的所有内容解释为空字符 ''

如何读取我的文件

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。