用CsvReader读取csv文件,碰到中文,读出来是乱码??!!!(急)

远不二 2010-04-19 10:12:29
我用CsvReader这个类去读取csv文件,但是文件包含中文的时候,读出来直接是乱码 这是怎么回事????
希望高手帮我解决,很着急~~~~!!!!!!
...全文
5744 16 打赏 收藏 转发到动态 举报
写回复
用AI写文章
16 条回复
切换为时间正序
请发表友善的回复…
发表回复
远不二 2010-04-19
  • 打赏
  • 举报
回复
[Quote=引用 14 楼 bao110908 的回复:]
哈哈,解决就好,解决就好,还是建议使用 GBK

快点回家休息吧 :-)
[/Quote]

恩 呵呵。。回去了 太谢谢了
话说这是我们头儿写的代码,他都不知道SJIS是日文字符集。。。不过我们的项目是给国外做的,应该也都是英文。。。。只不过要先拿到联通去测试一下,里面就有=中文了。
远不二 2010-04-19
  • 打赏
  • 举报
回复
[Quote=引用 12 楼 bao110908 的回复:]

建议改成 GBK 吧,GBK2312 不能处理繁体汉字
[/Quote]

恩 很感谢 我改成GBK了。
  • 打赏
  • 举报
回复
哈哈,解决就好,解决就好,还是建议使用 GBK

快点回家休息吧 :-)
  • 打赏
  • 举报
回复
用 GB2312 能行的话,用 GBK 肯定也能行,因为 GBK 是兼容 GB2312 的,并且扩展了很多很多的字。
远不二 2010-04-19
  • 打赏
  • 举报
回复
[Quote=引用 9 楼 truediego 的回复:]

SJIS是日文Shift-Jis碼, 你用emeditor或者IE之类的,看看你的csv文件是什么编码,再决定用什么编码
[/Quote]

恩 谢谢 已经解决了 把编码换成GBK2312了。
  • 打赏
  • 举报
回复
建议改成 GBK 吧,GBK2312 不能处理繁体汉字
远不二 2010-04-19
  • 打赏
  • 举报
回复
[Quote=引用 8 楼 bao110908 的回复:]

能用 notepad 记事本打开么?

如果你用的操作系统是简体中文版的,而不是其他的话,用 notepad 打开,点“另存为”(不是真的要存,只是看一下),那里有个“编码”选项,如果是 ANSI 的话,并且你的操作系统是简体中文版,那就是 GBK 编码,如果那个编码为 UTF-8 的话,那就是 UTF-8 编码。

如果你的操作系统是日文的话,那我就不大清楚了,不会日文也没用过日文操作……
[/Quote]

解决了,太感谢了 我把字符集改成GB2312了。 UTF-8貌似不行。(话说之前我就觉得怎么乱码都是日语的...)
加班到现在啊。。。还好解决问题了。
truediego 2010-04-19
  • 打赏
  • 举报
回复
SJIS是日文Shift-Jis碼, 你用emeditor或者IE之类的,看看你的csv文件是什么编码,再决定用什么编码
  • 打赏
  • 举报
回复
能用 notepad 记事本打开么?

如果你用的操作系统是简体中文版的,而不是其他的话,用 notepad 打开,点“另存为”(不是真的要存,只是看一下),那里有个“编码”选项,如果是 ANSI 的话,并且你的操作系统是简体中文版,那就是 GBK 编码,如果那个编码为 UTF-8 的话,那就是 UTF-8 编码。

如果你的操作系统是日文的话,那我就不大清楚了,不会日文也没用过日文操作系统。
  • 打赏
  • 举报
回复
中文字符集有 GB2312、GBK、GB18030,甚至 UTF-8 中也含有中文

具体的要看这个文件是采用什么编码的。
远不二 2010-04-19
  • 打赏
  • 举报
回复
[Quote=引用 5 楼 bao110908 的回复:]

SJIS 这是日文字符集吧?
[/Quote]

这个代码不是我写的 ,我刚来公司 ,要维护一个模块,现在有这个bug。我不是很清楚 我觉得可能是字符集的问题。那中文的字符集应该是什么呢???
  • 打赏
  • 举报
回复
SJIS 这是日文字符集吧?
远不二 2010-04-19
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 bao110908 的回复:]

哎,连代码都不贴一下,害得我还要去 google 一下 CsvReader 是啥。

CsvReader 有个这样的构造:CsvReader(InputStream inputStream, Charset charset),后面一个可以指定编码。
[/Quote]

CsvReader br = new CsvReader(filename,',',Charset.forName("SJIS"));
我初始化的一句,由于代码很多 就没有贴 不知道是不是这个字符集的问题???
远不二 2010-04-19
  • 打赏
  • 举报
回复
CsvReader br = new CsvReader(filename,',',Charset.forName("SJIS"));
我初始化的一句,由于代码很多 就没有贴 不知道是不是这个字符集的问题???
yangnan2009 2010-04-19
  • 打赏
  • 举报
回复
java 学习群 108363309
  • 打赏
  • 举报
回复
哎,连代码都不贴一下,害得我还要去 google 一下 CsvReader 是啥。

CsvReader 有个这样的构造:CsvReader(InputStream inputStream, Charset charset),后面一个可以指定编码。

62,614

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧