gpt4 book ai didi

java - 如何将自定义编码文件转换为 UTF-8(在 Java 中或使用专用工具)

转载 作者:塔克拉玛干 更新时间:2023-11-03 05:04:02 25 4
gpt4 key购买 nike

我用 Java 重写的遗留软件使用自定义(类似于 Win-1252)编码作为数据存储。对于我正在构建的新系统,我想用 UTF-8 替换它。

所以我需要将这些文件转换为 UTF-8 以提供给我的数据库。我知道使用的字符映射表,但不是广为人知的字符映射表。例如。 “A”位于位置 0x0041(如在 Win-1252 中),但在 0x0042 上有一个符号,在 UTF-8 中出现在位置 0x0102 上,依此类推。有没有一种简单的方法可以用 Java 解码和转换这些文件?

我已经阅读了很多帖子,但它们都涉及某种行业标准编码,而不是自定义编码。我希望可以创建自定义 java.nio.ByteBuffer.CharsetDecoderjava.nio.charset.Charset 以将其传递给 java.io。 InputStreamReader 如第一个答案 here 中所述?

欢迎提出任何建议。

最佳答案

不必太复杂。只需制作一个 256 个字符的数组

static char[] map = { ... 'A', '\u0102', ... }

然后

read each byte b in source
int index = (0xff) & b; // to make it unsigned
char c = map[index];
target.write( c );

关于java - 如何将自定义编码文件转换为 UTF-8(在 Java 中或使用专用工具),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4744722/

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