·您的位置: 首页 » 资源教程 » 编程开发 » JAVA、JSP » 彻底解决J2ME中的中文问题

彻底解决J2ME中的中文问题

类别: JSP教程  评论数:0 总得分:0
在J2ME程序设计过程中,在存储记录集、网络传输数据、以及读取资源文件中的数据时,都可能存在中文问题。

中文问题的本质是保存、传输中文时使用的字符编码和读取、获得中文时的字符编码不同。在J2ME中所有的手机都支持UTF-8格式的字符集。
在使用数据的时候,一般出现中文问题是在将字符串和字节数组转换的时候产生,下面是编码中文产生乱码的转换方法:


import java.io.*;



public class Test{







/**



* 将字节数组转换为字符串



* @param bytes 需要转换的字节数组



* @return 转换后的字符串



*/



public static String byte2String(byte[] bytes){



try{



ByteArrayInputStream bais = new ByteArrayInputStream(bytes);



DataInputStream dis = new DataInputStream(bais);







String s = dis.readUTF();







//关闭流



dis.close();



bais.close();







return s;







}catch(Exception e){



return null;



}



}







/**



* 将字符串转换为字节数组



* @param s 需要转换的字符串



* @return 转换后生成的字节数组



*/



public static byte[] string2Byte(String s){



try{



ByteArrayOutputStream baos = new ByteArrayOutputStream();



DataOutputStream bos = new DataOutputStream(baos);







bos.writeUTF(s);







byte[] bytes = baos.toByteArray();







//关闭流



bos.close();



baos.close();







return bytes;



}catch(Exception e){



return null;



}



}



}在J2ME程序设计过程中,在存储记录集、网络传输数据、以及读取资源文件中的数据时,都可能存在中文问题。
中文问题的本质是保存、传输中文时使用的字符编码和读取、获得中文时的字符编码不同。在J2ME中所有的手机都支持UTF-8格式的字符集。

在使用数据的时候,一般出现中文问题是在将字符串和字节数组转换的时候产生,下面是编码中文产生乱码的转换方法:





import java.io.*;



public class Test{







/**



* 将字节数组转换为字符串



* @param bytes 需要转换的字节数组



* @return 转换后的字符串



*/



public static String byte2String(byte[] bytes){



try{



ByteArrayInputStream bais = new ByteArrayInputStream(bytes);



DataInputStream dis = new DataInputStream(bais);







String s = dis.readUTF();







//关闭流



dis.close();



bais.close();







return s;







}catch(Exception e){



return null;



}



}







/**



* 将字符串转换为字节数组



* @param s 需要转换的字符串



* @return 转换后生成的字节数组



*/



public static byte[] string2Byte(String s){



try{



ByteArrayOutputStream baos = new ByteArrayOutputStream();



DataOutputStream bos = new DataOutputStream(baos);







bos.writeUTF(s);







byte[] bytes = baos.toByteArray();







//关闭流



bos.close();



baos.close();







return bytes;



}catch(Exception e){



return null;



}



}



}
-= 资 源 教 程 =-
文 章 搜 索
关键词:
类型:
范围:
纯粹空间 softpure.com
Copyright © 2006-2008 暖阳制作 版权所有
QQ: 15242663 (拒绝闲聊)  Email: faisun@sina.com
 纯粹空间 - 韩国酷站|酷站欣赏|教程大全|资源下载|免费博客|美女壁纸|设计素材|技术论坛   Valid XHTML 1.0 Transitional
百度搜索 谷歌搜索 Alexa搜索 | 粤ICP备19116064号-1