编码问题:假设dimStr=new String(str.getBytes("ISO-8859-1"));如果已经知道dimStr的值,如何求str的值?

signboy 2004-03-26 12:06:59
编码问题:假设dimStr=new String(str.getBytes("ISO-8859-1"));如果已经知道dimStr的值,如何求str的值?

因为调用别人写的类,这个类对参数进行了str.getBytes("ISO-8859-1")这样的处理,如果正常的汉字例如"你好",如果北这样处理的话,就会变成乱码,所以
必须首先对"你好"进行逆向处理一下,求这个逆向的方法。
...全文
164 11 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
yeshucheng 2004-03-27
  • 打赏
  • 举报
回复
两次反取不行吗?
进去时候可以:
str = new String(str.getBytes("ISO-8859-1"),"GBK");
出来再转:
str = new String(str.getBytes("GBK"),"ISO-8859-1");

programer23 2004-03-27
  • 打赏
  • 举报
回复
totodo(土豆仙) ( ) 的有道理。new String(str.getBytes("ISO-8859-1"))

没错如果字符串是个中文的话旧不行呗。
比如你好,这样一转化之后
4个字节变成了两个字节。。 怎么也不可能从两个字节中找出两个汉字来。
runki 2004-03-27
  • 打赏
  • 举报
回复
同意 totodo(土豆仙)前辈所说的,如果按你那样肯定会出现错误》
wilddonkey 2004-03-27
  • 打赏
  • 举报
回复
up
老土豆T 2004-03-26
  • 打赏
  • 举报
回复
new String(str.getBytes("ISO-8859-1"))

如果str是个中文的话。。 那就不能得到了。

比如你好,这样一转化之后
4个字节变成了两个字节。。 怎么也不可能从两个字节中找出两个汉字来。
chashui 2004-03-26
  • 打赏
  • 举报
回复
帮你up
Leemaasn 2004-03-26
  • 打赏
  • 举报
回复
你那样写是有问题啊。
kkcncry 2004-03-26
  • 打赏
  • 举报
回复
dimStr=new String(str.getBytes("ISO-8859-1"));//你的代码
str=new String(dimStr.getBytes("ISO-8859-1"),"GB2312");//我得代码
caiyanying732 2004-03-26
  • 打赏
  • 举报
回复
帮你顶
signboy 2004-03-26
  • 打赏
  • 举报
回复
大家好像都没看清楚题目啊!
boy 2004-03-26
  • 打赏
  • 举报
回复
试试:
str = new String(str.getBytes("GB2312"),"8859_1");
str = new String(str.getBytes("8859_1"),"GB2312");

62,634

社区成员

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

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