java - 将 EBCDIC 字符串转换为 ASCII 格式?

标签 java ebcdic

我有一个从 Db2 表中提取的平面文件,该平面文件包含 char 格式和压缩十进制格式的记录。如何将压缩数据转换为 java 字符串。有什么方法可以将整个平面文件转换为 ASCII 格式。

最佳答案

EBCDIC 是一个编码家族。您需要更详细地了解您使用的是哪种 EBCDIC 编码。

Java 有多个 supported encodings ,包括:

  • IBM500/Cp500 - EBCDIC 500V1
  • x-IBM834/Cp834 - IBM EBCDIC DBCS-only Korean(双字节)
  • IBM1047/Cp1047 - EBCDIC 主机的 Latin-1 字符集

尝试这些,看看你得到了什么。像这样的东西:

InputStreamReader rdr = new InputStreamReader(new FileInputStream(<your file>), java.nio.Charset.forName("ibm500"));
    while((String line = rdr.readLine()) != null) {
        System.out.println(line);
}

关于java - 将 EBCDIC 字符串转换为 ASCII 格式?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7120395/

相关文章:

java - Maven编译报错try-with-resources

java - Java 中的 UTF-8 到 EBCDIC

java - 如何在 Java String 中存储 EBCDIC (IBM-1047) 编码文本而不破坏它?

java - ConstraintLayout 子项在父 View 中未正确对齐

java - 如何使用 PTY 在 Scala 中生成进程?

Java : large array design

java - 监控线程状态

将 EBCDIC 可打印文件就地转换为 ASCII 的 C 代码

java - 打印包含 EBCDIC 值的字节数组未给出预期值