iteye_14529 2009-09-15 09:16
浏览 379
已采纳

java读取excel时法文出现乱码

我需要用程序读取excel中的数据,并将其导入到数据库中,
但是excel中出现了如 Der Alpenjäger 中"ä"这样的法文字符,导致用jxl获取值
Workbook rwb = Workbook.getWorkbook(new File(attachmentFilePath), workbookSettings);
Sheet sheet = rwb.getSheet(0);
Cell[] cell = sheet.getRow(0);
String str = cell[0].getContents();
后得到的是乱码,进而写入mysql也是乱码

我mysql用的编码是utf8,直接在mysql中写入"ä"不会出现问题;
我用Eclipse开发,执行Sql="insert into table (name) values('ä')"也没用问题;

各位大大,帮忙想想办法啦
[b]问题补充:[/b]
以上几位说的我都试过了

还是不行啊

excel是用的什么编码啊?
[b]问题补充:[/b]
new String(str.getBytes("GBK"),"utf-8")

workbookSettings.setEncoding("ISO-8859-1");
试过了 还是乱码
[b]问题补充:[/b]
workbookSettings.setEncoding("ISO-8859-1");
new String(str.getBytes("ISO-8859-1"),"utf-8")

我就是这么设置的 可是不行啊

excel是用的utf-16编码?
难道要new String(str.getBytes("utf-16"),"utf-8") ?
[b]问题补充:[/b]
试了无数种编码转换 竟然都不行

wjm251说的方法我再试试

  • 写回答

8条回答 默认 最新

  • wjm251 2009-09-15 11:05
    关注

    http://jiemyonline.blog.sohu.com/53774941.html
    看看这个是否有帮助

    不过他提了个思路 ,下载源码然后跟踪调试----------
    我这边也不方便搞环境了,不方便帮你调

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(7条)

报告相同问题?

悬赏问题

  • ¥15 执行 virtuoso 命令后,界面没有,cadence 启动不起来
  • ¥50 comfyui下连接animatediff节点生成视频质量非常差的原因
  • ¥20 有关区间dp的问题求解
  • ¥15 多电路系统共用电源的串扰问题
  • ¥15 slam rangenet++配置
  • ¥15 有没有研究水声通信方面的帮我改俩matlab代码
  • ¥15 ubuntu子系统密码忘记
  • ¥15 信号傅里叶变换在matlab上遇到的小问题请求帮助
  • ¥15 保护模式-系统加载-段寄存器
  • ¥15 电脑桌面设定一个区域禁止鼠标操作