在使用String.split的时候遇到个小坑:https://www.cnblogs.com/mingforyou/archive/2013/09/03/3299569.html
public class FileUtils { public static List<String> file2List(String filePath) throws IOException { List<String> lines = new ArrayList(); BufferedReader bufferedReader = new BufferedReader(new InputStreamReader(new FileInputStream(filePath))); String line; while (null != (line=bufferedReader.readLine())){ lines.add(line); } return lines; } /** * 解析文件,返回mapList * @param filePath * @return * @throws IOException */ public static List file2MapList(String filePath) throws IOException { List list = file2List(filePath); List mapList = new ArrayList(); List<String> line,head = null; for (int i=0; i<list.size(); i++){ Map<String, String> tmpMap = new HashMap(); //第一行为表头 (二狗,直接用excel或xml吧,解析得这么费劲) if (0 == i){ head = Arrays.asList(list.get(i).toString().split("\\|")); continue; } line = Arrays.asList(list.get(i).toString().split("\\|")); for (int j=0;j<line.size(); j++){ tmpMap.put(head.get(j), line.get(j)); } mapList.add(tmpMap); } return mapList; } @Test public void test(){ try { List<String> list = file2List("D:\\code\\code-test\\lark-perf\\src\\main\\groovy\\cn\\com\\ykse\\perf\\util\\test.txt"); System.out.println(list.get(0)); List list1 = file2MapList("D:\\code\\code-test\\lark-perf\\src\\main\\groovy\\cn\\com\\ykse\\perf\\util\\test.txt"); System.out.println(list1); } catch (IOException e) { e.printStackTrace(); } } }