C 在使用UCS-2 LE编码的文件中搜索短语
C++ searching for a phrase in a file with UCS-2 LE encoding
我需要编写一个搜索文本文件并列出名称列表的程序,该文件包含。每个名称都以" [prg]"短语放置。因此,我想搜索" PRG",而不是阅读下一个单词。但是我有一个问题,因为该文件的编码是UCS-2 le。我发现我需要使用" wstring"变量,而不是"字符串"。但是我看到我正在阅读奇怪的值形成我的文件,而我无法将它们与" prg"短语进行比较。
这是代码:
int main() {
wstring textBuff; // Buffor for reading text from a file
wstring searchBuff = L"PRG"; // Variable containing searching phrase
wifstream file;
file.open("programs.prg", ios::in | ios::binary);
if (file.good()) {
// Reading file and listing every word after "PRG" phrase
while (!file.eof()) {
file >> textBuff;
if (textBuff.find(searchBuff) != string::npos)
wcout << textBuff << endl;
}
}
file.close();
system("pause");
return 0;
}
我是对编程的新手,所以很抱歉,如果我的问题很琐碎,但是我陷入困境,我不知道我还能做什么。先感谢您。
这是我试图从以下数据中获取数据的PRG文件:.prg文件
它包含许多其他数据,但是我要做的是列出烘焙程序的名称。因此,我想搜索[prg],而不是读两个单词,而不是获得剩下的行,这是烘焙程序的名称。
,没有看到文件中的数据副本或某些相似性的数据副本,很难提供很多帮助。
出现了许多问题,我怀疑它们中的任何一个都可能很重要,因为您称自己为"编程新手"。
首先在http://hackipedia.org/character sets/unicode, utf and AND UC%20CENCODING/UCS-2.HTM
开始。特别是标题为:字节订单编码方案
如果您的数据在" PRG"标签之后具有BOM,则必须通过编码适当的endianess来处理它...
也请阅读以下内容:https://msdn.microsoft.com/en-us/library/mt771556.aspx
特别是底部的注释...
dr t
相关文章:
- cmake:添加要搜索头文件的目录
- 通过比较C++中的行在 txt 文件中搜索的最简单方法是什么?
- 在树结构.txt文件中搜索节点
- 将共享库的搜索路径更改为生成文件中提供的 rpath
- Glob 搜索目录也会返回文件
- 从C++文件中搜索艺术家姓名和歌曲
- 按单词搜索文件,然后在C++中打印特定行数
- 如何获取组件和搜索 CSV 文件
- 如何搜索文本文件并以C++打印该行
- 通过搜索硬盘驱动器查找文件目录
- 在C++目录中搜索文件的函数输出中出错
- 使用Visual Studio C++按名称搜索目录中的文件
- 简单的二分搜索对我不起作用。我正在尝试从文本文件中搜索单词
- 完成搜索任务时为空输出文件
- 如何使用 C++ 在 txt 文件中搜索字符
- 在 txt 文件中搜索中间子字符串未被选中的字符串
- 从文件搜索搜索单词,然后将整个行复制到另一个文件
- 递归文件搜索出现问题
- Linux下的文件搜索api
- c++文件搜索数据库文件并计算下一行