问题描述
- linux中查找文件中中文逗号
-
.csv文件中有一个字段是一个中文的逗号",",可是我把这个文件放到linux系统中用getline()
读取一行到一个字符串中str, 再用str.find() 查找这个逗号,为什么找不到啊? 怎么才能找到???
求大牛解答,急急急!!!
解决方案
完全可以用linux cat指令加上grep进行查找,十分方便
解决方案二:
你用unicode方式读取文件。然后用wstring来查找
同时你的linux需要支持中文
解决方案三:
我是要读取文件中的一行要进行解析用的,在c++代码中用的
解决方案四:
可以先将中文逗号变成 英文逗号,这样问题就解决啦。
linux平台上,sed的处理能力很强大的哦。
解决方案五:
字符集的问题有一点麻烦。
首先,查明你的.csv文件是用什么字符集保存的。假设为utf8
文件用二进制方式打开。
用getline读取文件数据。
然后将读取的数据转换成unicode格式。(用 iconv函数,在 iconv.h 头文件中)
然后再用 wstring来查找。
注意,要查找的字符串(也就是中文件 的逗号)也要转换成 unicode格式。
时间: 2025-01-30 12:23:23