急等,ebcdic编码转换问题!

wuboy2000 2010-11-17 03:57:50
我现有ebcdic编码的文本数据,里面含有中文字符,现我已能把该数据由ebcdic编码转换成ascii编码数据,但由于有中文因此显示乱码。
哪位知道该如何实现ebcdic编码到unicode编码或gbk编码的转换?
急等!
...全文
778 14 打赏 收藏 转发到动态 举报
写回复
用AI写文章
14 条回复
切换为时间正序
请发表友善的回复…
发表回复
茫茫大海 2010-11-17
  • 打赏
  • 举报
回复
[Quote=引用 13 楼 wuboy2000 的回复:]
引用 10 楼 hudie1234567 的回复:
可不可以把你的ebcdic编码的文件给我发发!我感觉我说的没有问题啊!zhchljr@163.com

不好意思,客户的数据,不好外发的。
[/Quote]
哦,是这样啊!那就算了!不过你可以从中考两句发到我邮箱!
wuboy2000 2010-11-17
  • 打赏
  • 举报
回复
[Quote=引用 10 楼 hudie1234567 的回复:]
可不可以把你的ebcdic编码的文件给我发发!我感觉我说的没有问题啊!zhchljr@163.com
[/Quote]
不好意思,客户的数据,不好外发的。
茫茫大海 2010-11-17
  • 打赏
  • 举报
回复
[Quote=引用 11 楼 wuboy2000 的回复:]
我觉得我用数据文件不成,恐怕字符串也够呛
[/Quote]
文件发给我一份!我看看!
wuboy2000 2010-11-17
  • 打赏
  • 举报
回复
我觉得我用数据文件不成,恐怕字符串也够呛
茫茫大海 2010-11-17
  • 打赏
  • 举报
回复
可不可以把你的ebcdic编码的文件给我发发!我感觉我说的没有问题啊!zhchljr@163.com
wuboy2000 2010-11-17
  • 打赏
  • 举报
回复
[Quote=引用 7 楼 hudie1234567 的回复:]
你可以调用转换字符串的方法,得到一个字符串,然后用我上面说的!
/**
* 字符串的EBCDIC->ASCII转换函数
*/
public static String EBCDICToASCII(String ebcdic){
return new String(EBCDICToASCII(ebcdic.getBytes()));
}
[/Quote]
我那是一个数据文件,1M多呢。。。
Jlins 2010-11-17
  • 打赏
  • 举报
回复

+[Quote=引用 7 楼 hudie1234567 的回复:]
你可以调用转换字符串的方法,得到一个字符串,然后用我上面说的!
/**
* 字符串的EBCDIC->ASCII转换函数
*/
public static String EBCDICToASCII(String ebcdic){
return new String(EBCDICToASCII(ebcdic.getBytes()));
}
[/Quote]
茫茫大海 2010-11-17
  • 打赏
  • 举报
回复
你可以调用转换字符串的方法,得到一个字符串,然后用我上面说的!
/**
* 字符串的EBCDIC->ASCII转换函数
*/
public static String EBCDICToASCII(String ebcdic){
return new String(EBCDICToASCII(ebcdic.getBytes()));
}
zou344266858 2010-11-17
  • 打赏
  • 举报
回复
恭喜发财, 恭喜发财, 恭喜发财, 恭喜发财, 恭喜发财, 恭喜发财, 恭喜发财, 恭喜发财, 恭喜发财, 恭喜发财, 恭喜发财, 恭喜发财,
wuboy2000 2010-11-17
  • 打赏
  • 举报
回复
[Quote=引用 4 楼 hudie1234567 的回复:]
引用 3 楼 wuboy2000 的回复:
回复2楼的,那篇文章我看过,现在能得到ascii编码的数据,然后我使用下面的代码:

//bos.toByteArray即ascii编码的数据
System.out.println(new String(bos.toByteArray(),"GBK"));
得到的仍然是乱码,制定编码为utf-8也一样。


Java code

Sy……
[/Quote]

是这样,我正是使用你贴的那篇文章里的EBCDICToASCII函数,将一个ebcdic编码的数据文件转换为一个ascii编码的数据文件,然后读该文件内容到内存中,即ByteArrayOutputStream bos中,所以使用:
System.out.println(new String(bos.toByteArray(),"GBK"));
茫茫大海 2010-11-17
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 wuboy2000 的回复:]
回复2楼的,那篇文章我看过,现在能得到ascii编码的数据,然后我使用下面的代码:

//bos.toByteArray即ascii编码的数据
System.out.println(new String(bos.toByteArray(),"GBK"));
得到的仍然是乱码,制定编码为utf-8也一样。
[/Quote]

System.out.println(new String(str.getBytes("ASCII"), "GBK"));//str为ascii编码的字符串

wuboy2000 2010-11-17
  • 打赏
  • 举报
回复
回复2楼的,那篇文章我看过,现在能得到ascii编码的数据,然后我使用下面的代码:

//bos.toByteArray即ascii编码的数据
System.out.println(new String(bos.toByteArray(),"GBK"));
得到的仍然是乱码,制定编码为utf-8也一样。
茫茫大海 2010-11-17
  • 打赏
  • 举报
回复
http://www.cnblogs.com/happy-wangtao/archive/2006/12/31/608719.html

有一个 JAVA实现ASCII码与EBCDIC码的相互转换 的文档。


至于 ASCII <---> unicode 应该不用我说了吧?
wu_hong_min 2010-11-17
  • 打赏
  • 举报
回复
不会 帮顶!希望也能看到答案。。。

62,616

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧