要导入的txt路径 public String GetStrByUrl(String url) { String restr; try { InputStream ins = this.getClass().getResourceAsStream(url); byte[] charset = new byte[50000]; int ch = ins.read(); int length = 0; while (ch != -1) { charset[length] = (byte) ch; ch = ins.read(); length++; } ins.close(); byte[] xmlCharArray = new byte[length]; System.arraycopy(charset, 0, xmlCharArray, 0, length); restr = new String(xmlCharArray, "UTF-8"); } catch (IOException ex1) { restr = null; } return restr; } 将上面读取的txt转换成按回车分割的Vector数组 public static Vector Cutduan(String str) { Vector V = new Vector(); if (str == null) return null; int i = str.indexOf("/r/n", 0); int j = 0; while (i != -1) { String str11 = str.substring(j, i); V.addElement(str11); j = i + 2; i = str.indexOf("/r/n", j); } String str11 = str.substring(j, str.length()); V.addElement(str11); return V; } Vector中的String 按width分割 public static String[] stringToStringArray(String str, int width) { String[] returnStr; int leng = str.length(); String[] sbArr; sbArr = new String[App_Resources.sf.stringWidth(str.toString()) / width + 5]; int temWd = 0, red = 0; int k1; for (int i = 0, j = 0; i < leng; i++) { k1 = i + 1; if (k1 == leng) { sbArr[red] = str.substring(j, k1); red++; } else { temWd += App_Resources.sf.charWidth(str.charAt(i)); if (temWd <= width && ((temWd + App_Resources.sf.charWidth(str.charAt(k1))) > width)) { sbArr[red] = str.substring(j, k1); j = k1; temWd = 0; red++; } } } returnStr = new String[red]; for (int i = 0; i < red; i++) returnStr[i] = new String(sbArr[i]); sbArr = null; return returnStr; }