彻底解决J2ME中的中文问题

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
想对作者说点什么? 我来说一句

没有更多推荐了,返回首页

关闭
关闭
关闭