gpt4 book ai didi

使用 UTF-8 数据识别字符串的 JAVA 代码

转载 作者:行者123 更新时间:2023-12-02 11:28:12 41 4
gpt4 key购买 nike

我正在尝试标准化一组数据。有些名称是 UTF-8 编码的,有些则不是。我在 JAVA 中需要做的是检测名称是否是 UTF 编码的或没有使用某种形式的条件逻辑,以便我可以正确翻译每一行。

String s1 = "José Flores";
String s1 = "José Flores";

IF [condition] (identify UTF-8)
byte[] utf8Bytes = s1.getBytes("ISO-8859-1");
String s2 = new String(utf8Bytes,"UTF-8");
ELSE
String s2 = s1;

最佳答案

juniversalchardet的帮助下,就可以得到编码,然后进行条件运算。这可以帮助您获取编码类型。

public static String guessEncoding(byte[] bytes) {
String DEFAULT_ENCODING = "UTF-8";
org.mozilla.universalchardet.UniversalDetector detector =
new org.mozilla.universalchardet.UniversalDetector(null);
detector.handleData(bytes, 0, bytes.length);
detector.dataEnd();
String encoding = detector.getDetectedCharset();
detector.reset();
if (encoding == null) {
encoding = DEFAULT_ENCODING;
}
return encoding;
}

这需要 juniversalchardet-1.0.3.jar,另外 here有一些信息

关于使用 UTF-8 数据识别字符串的 JAVA 代码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49465766/

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