本文向大家简单介绍一下J2ME中读取Unicode和UTF-8编码文件的方法,与J2SE和J2EE相比,J2ME总体的的运行环境和目标更加多样化,但其中每一种产品的用途却更为单一,而且资源限制也更加严格。
J2ME中读取Unicode和UTF-8编码文件
一、J2ME读取Unicode文件
- /**
- *读取Unicode编码文本文件
- *@paramresourceString-文件名
- *@returnString-Unicode文本
- */
- publicstaticStringread_Uni(Stringresource){
- byteword_uni[]=newbyte[1024];
- StringstrReturn=null;
- InputStreamis;
- try{
- is=instance.getClass().getResourceAsStream(resource);
- is.skip(2);//跳过两个字节的文件头
- is.read(word_uni);
- is.close();
- StringBufferstringbuffer=newStringBuffer("");
- for(intj=0;j<word_uni.length;){
- intl=word_uni[j++];
- inth=word_uni[j++];
- charc=(char)((l&0xff)|((h<<8)&0xff00));
- stringbuffer.append(c);
- }
- strReturn=stringbuffer.toString();
- }catch(IOExceptionex){
- System.out.println(ex);
- }finally{
- is=null;
- }
- returnstrReturn;
- }
#p#二、J2ME读取UTF-8文件
- /**
- *读取UTF-8编码文本文件
- *@paramresourceString-文件名
- *@returnString-UTF-8文本
- */
- publicstaticStringread_UTF(Stringresource){
- byteword_utf[]=newbyte[1024];
- StringstrReturn=null;
- InputStreamis;
- try{
- is=instance.getClass().getResourceAsStream(resource);
- is.read(word_utf);
- is.close();
- strReturn=newString(word_utf,"UTF-8");
- }catch(IOExceptionex){
- System.out.println(ex);
- }
- returnstrReturn;
- }
【编辑推荐】
- 剖析J2ME对Unicode实体编码转换代码
- J2ME开发环境搭建必备手册
- J2ME开发环境的搭建和运行
- J2ME KVM教程之增加KVM中的系统调用API
- Java2平台J2SE、J2EE、J2ME三大版本的区别