一、读取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; }