linux中查找文件中中文逗号

.csv文件中有一个字段是一个中文的逗号",",可是我把这个文件放到linux系统中用getline()
读取一行到一个字符串中str, 再用str.find() 查找这个逗号,为什么找不到啊? 怎么才能找到???
求大牛解答,急急急!!!

5个回答

完全可以用linux cat指令加上grep进行查找,十分方便

你用unicode方式读取文件。然后用wstring来查找
同时你的linux需要支持中文

barry_di
barry_di 怎么用unicode方式读取文件?
5 年多之前 回复

我是要读取文件中的一行要进行解析用的,在c++代码中用的

可以先将中文逗号变成 英文逗号,这样问题就解决啦。
linux平台上,sed的处理能力很强大的哦。

mingshanjianke
mingshanjianke 回复mingshanjianke:
5 年多之前 回复
mingshanjianke
mingshanjianke o
5 年多之前 回复
mingshanjianke
mingshanjianke o
5 年多之前 回复

字符集的问题有一点麻烦。
首先,查明你的.csv文件是用什么字符集保存的。假设为utf8
文件用二进制方式打开。
用getline读取文件数据。
然后将读取的数据转换成unicode格式。(用 iconv函数,在 iconv.h 头文件中)
然后再用 wstring来查找。
注意,要查找的字符串(也就是中文件 的逗号)也要转换成 unicode格式。

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
立即提问
相关内容推荐