使用Java获取文件编码ASCII或EBCDIC

问题描述

我有一个扩展名为 .b3c 文件,我想知道它是使用Java jow编码为ASCII还是EBCDIC,我可以实现吗。

需要帮助。

谢谢

解决方法

假设文本文件包含多行文本,请检查换行符字符。

在ASCII中,行以LF / \n / 0x0a结尾。当然,在Windows上也有CR,但我们可以忽略该部分。

在EBCDIC中,行以NL / \025 / 0x15结尾。

ASCII文本文件将不包含0x15 / NAK,而EBCDIC文本文件将不包含0x0a / SMM,因此请同时查找:

  • 如果仅找到其中之一,则说明字符集。

  • 如果找到这两个文件,则该文件是二进制文件,而不是文本文件,因此请拒绝该文件。

  • 如果均未找到,则文件可能只有一行文本,在这种情况下,可能需要进一步分析。希望这里不是这种情况,所以到目前为止完成的简单测试就足够了。