您的位置:首页 > 其它

J2ME中读取Unicode和UTF-8编码文件的方法

2010-01-08 11:49 519 查看
一、读取Unicode
文件

/**

*
读取Unicode
编码文本文件

* @param resource String -
文件名

* @return String - Unicode
文本

*/

public static String read_Uni(String resource) {

byte word_uni[] = new byte[1024];

String strReturn = null;

InputStream is;

try {

is = instance.getClass().getResourceAsStream(resource);

is.skip(2); //
跳过两个字节的文件头

is.read(word_uni);

is.close();

StringBuffer stringbuffer = new StringBuffer("");

for (int j = 0; j < word_uni.length; ) {

int l = word_uni[j++];

int h = word_uni[j++];

char c = (char) ((l & 0xff) | ((h << 8) & 0xff00));

stringbuffer.append(c);

}

strReturn = stringbuffer.toString();

} catch (IOException ex) {

System.out.println(ex);

} finally {

is = null;

}

return strReturn;

}

二、读取UTF-8
文件

/**

*
读取UTF-8
编码文本文件

* @param resource String -
文件名

* @return String - UTF-8
文本

*/

public static String read_UTF(String resource) {

byte word_utf[] = new byte[1024];

String strReturn = null;

InputStream is;

try {

is = instance.getClass().getResourceAsStream(resource);

is.read(word_utf);

is.close();

strReturn = new String(word_utf, "UTF-8");

} catch (IOException ex) {

System.out.println(ex);

}

return strReturn;

}

备注:

InputStream in=this.getClass().getResourceAsStream("/help.txt")
;//将位于res目录下的help.txt中数字读出。

……

in.mark(0);

……

in.reset();
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: