gpt4 book ai didi

java - MYSQL JAVA Netbeans 和 JXL 的特殊字符

转载 作者:行者123 更新时间:2023-11-30 22:30:43 25 4
gpt4 key购买 nike

我在使用 MYSQL 数据库中的 í、ó、ñ 等特殊字符时遇到问题。

我已经阅读了很多有关字符集、排序规则、utf 和子集的内容,但我可能无法将其正确应用于此问题。我不确定问题是出在我的表上还是在读取源文件和编码时。我正在使用 netbeans 开发一个生成特定报告的界面

这里我简单说明一下出现问题的过程

  1. 有一个表格,其中包含所请求的 Excel 文件的路径文件。
  2. 我的代码采用该路径,使用 JXL 库打开文件。
  3. 然后它开始读取代码中指定的每个单元格,并将数据导出到指定的表格(这里是表格中出现的每个特殊字符中的位置)
  4. 数据正确导出到几个表,没有问题,只有特殊字符被替换成这个

所以,在研究之后我试过了

  • 因为我使用的是 MYSQL 工作台,所以我将排序规则中的每个表从 utf8 - 默认更改为 utf8 - utf8_spanish_ci 和 utf8 - utf8_spanish_ci
  • 我还尝试将排序规则更改为 utf16 - 默认排序规则、utf_spanish_ci、bin 等
  • 此外,我还尝试过使用 utf32 排序规则。
  • netbeans 编码正确设置为 utf-8
  • 我试过探索连接到 MYSQL 的 JAVA 函数,我正在使用这个连接,但我没有发现任何关于编码的信息:

    private Connection conecta=null;
    String Driver="com.mysql.jdbc.Driver";
    String Url="jdbc:mysql://XXX.XXX.XXX.XX/BLAABLA";
    Class.forName(Driver);
    conecta=DriverManager.getConnection(Url,User,Password);
  • 当我手动插入包含特殊字符的数据时,数据库会在我需要时正确显示,但是当我尝试使用自动插入选项(如前所述,使用 jxl 库等读取文件)时,然后事情发生了。

  • 我在 stackoverflow 中找到了一些有用的答案,但所有答案都与 php、html、xml 等的特定情况有关。所有关于java的回答都和utf8排序有关

所以我希望你能给我一些帮助。

我没有正确地进行整理吗?我应该直接在控制台中尝试一些奇怪的事情吗? mysql workbench 是否禁止某些东西?

我愿意接受所有类型的建议,但如果答案是“你必须使用另一个库,因为 jxl 不支持那个”,请考虑我的项目快完成了,然后用另一个库重新做这个正如我已经预料的那样,可能会花费我更多的时间。拜托,如果 JXL 是问题所在,那么可能一定有其他问题。没有什么是不可能的吧?

感谢抽空。

最佳答案

默认情况下,Excel 文件使用 windows-1255 (Cp1255) 编码。因此,当您从 excel 文件中读取这些字节时,您需要使用该字符集处理它们,然后使用 utf8 存储它们。

关于java - MYSQL JAVA Netbeans 和 JXL 的特殊字符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33962212/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com