首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >国际JRE6或JDK6或读取"cp037“编码方案中的文件

问国际JRE6或JDK6或读取"cp037“编码方案中的文件
EN

Stack Overflow用户
提问于 2010-05-25 04:19:35
回答 4查看 5.6K关注 0票数 1

我一直在尝试使用JAVA读取"cp037“编码模式的文件。我能够阅读像UTF-8,UTF16 etc...After这样的基本编码方案的文件,在互联网上做了一点研究后,我才知道我们需要安装charset.jar或国际版本的JRE来支持扩展编码方案。谁能给我一个国际版本的JRE6或JDK6的链接。或者,有没有更好的方法可以读取cp037编码模式的文件。

附注: cp037是IBM大型机支持的一种字符编码方案。我所需要的就是使用java程序在windows中显示一个文件,该文件是在IBM大型机上生成的。

提前感谢你的帮助……:-)

EN

回答 4

Stack Overflow用户

回答已采纳

发布于 2010-05-25 04:49:24

我发现了用于Java5的this webpage (注意,对于Java6可能会有所不同)。没有特殊的、单独的“国际”版本的JRE或JDK;但是,您的系统上是否安装lib\charsets.jar取决于您的操作系统支持什么。

您确定您的JRE安装目录中没有charsets.jar吗?在我的系统上,它在%JDK_HOME%\jre\lib下。(注:不在%JDK_HOME%\lib下)。

搜索您的系统,看看您是否已经在某个地方安装了charsets.jar。(请注意,它被称为带有s的charsets.jar,而不是charset.jar)。

票数 1
EN

Stack Overflow用户

发布于 2010-05-25 04:43:10

在互联网上做了一些研究后,我知道我们需要安装charset.jar或国际版本的JRE来支持扩展编码方案。

您确定这个字符集没有包含在标准发行版中吗?

这段代码在jdk 1.6.0_17 64位(Windows)上运行良好:

代码语言:javascript
复制
Charset charset = Charset.forName("cp037");
BufferedReader br = new BufferedReader(new InputStreamReader(
    new FileInputStream(f), charset));

String line = null;
while ((line = br.readLine()) != null) {
    System.out.println("read line: " + line);
}
票数 1
EN

Stack Overflow用户

发布于 2011-07-19 03:48:24

这是一个与WinXP上的Java1.6略有不同的代码,通过web上传从大型机获取文本:

代码语言:javascript
复制
String text = new String(data, 0, data.length, "Cp037");
text = text.replace('', 'a');
text = text.replace('Ý', '[');
text = text.replace('¨', ']');

请注意,有几个字符需要特别注意。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/2900038

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档