java编码转换的两个处理

zxt12300 2010-06-18 04:57:39
有两个编码转换函数,哪位兄弟能帮忙实现一下,不甚感激!

/**
* convert HEX to ASCII
*
* example: 0x0C -> 0x3132
* 0x1234 -> 0x34363630
*
* @param inArray input data array
* @param inOffset input data offset
* @param inLength input data length
* @param outArray output data array
* @param outOffset output data offset
* @return @return the length of the result ASC stream
*/
public static short HEXToASC(byte[] inArray,
short inOffset,
short inLength,
byte[] outArray,
short outOffset){
return 0;
}


/**
* convert ASCII to HEX
* The method is used in the situation: every byte in the source stream is between "0x30" and "0x39".
*
* example: 0x3132 -> 0x0C
* example: 0x31323334 -> 0x04D2
*
* @param inArray input data array
* @param inOffset input data offset
* @param inLength input data length
* @param outArray output data array
* @param outOffset output data offset
*
* @return the length of the result HEX stream
*/
public static short ASCToHEX(byte[] inArray,
short inOffset,
short inLength,
byte[] outArray,
short outOffset){
return 0;
}
...全文
158 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
宁静-夏天 2010-06-22
  • 打赏
  • 举报
回复
你这个不是编码问题,虽然看了 redduke1202 的解释依然晕。

你需要处理两个问题:

1.16进制和10进制转化
这个不难吧,计算机基础。简单的模运算和四则运算。

2.数值和ASCII码转化
'0'=48
每个byte数值+48不久好了



这些基础方法实现都不回使用到String的。
zxt12300 2010-06-21
  • 打赏
  • 举报
回复
[Quote=引用 6 楼 closewbq 的回复:]
Java code

//text是你转化的字符串.
char[] array = text.toCharArray();
StringBuilder sb = new StringBuilder();
sb.append("0x")
for (char c : array) {
sb.append(Integer.toHexString(c).toUpperCase());
}
……
[/Quote]

兄弟啊,刚说过不能用string方式的。
技术传播 2010-06-21
  • 打赏
  • 举报
回复
记号路过
closewbq 2010-06-21
  • 打赏
  • 举报
回复

//text是你转化的字符串.
char[] array = text.toCharArray();
StringBuilder sb = new StringBuilder();
sb.append("0x")
for (char c : array) {
sb.append(Integer.toHexString(c).toUpperCase());
}
}
lw474580248 2010-06-21
  • 打赏
  • 举报
回复
晕当中.....嘻嘻
zxt12300 2010-06-21
  • 打赏
  • 举报
回复
对,3楼的兄弟理解的对。
感觉不是很好弄吧,不能用string做转换,因为程序是javacard要用的。
「已注销」 2010-06-18
  • 打赏
  • 举报
回复
0x0C => 12 => "12" => '1','2' => 0x3132
0x1234 =>4660 => "4660" => '4','6','6','0' => 0x34363630
  • 打赏
  • 举报
回复
0x0C -> 0x3132
0x1234 -> 0x34363630

看不懂是啥!
zxt12300 2010-06-18
  • 打赏
  • 举报
回复
一时想不到好的实现方式,请大家帮忙下咯,可以不考虑各种异常处理。

67,513

社区成员

发帖
与我相关
我的任务
社区描述
J2EE只是Java企业应用。我们需要一个跨J2SE/WEB/EJB的微容器,保护我们的业务核心组件(中间件),以延续它的生命力,而不是依赖J2SE/J2EE版本。
社区管理员
  • Java EE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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