public static void main(String[] args) throws IOException {String content = Files.readAllLines(Paths.get("C:/Users/DELL/Desktop/1.txt")).stream().collect(Collectors.joining("\n"));System.out.println(content);}
读取文件内容,但是在执行‘Files.readAllLines(path);’时,出现异常:java.nio.charset.MalformedInputException: Input length = 1。
查看源码发现:
public static BufferedReader newBufferedReader(Path path) throws IOException { return newBufferedReader(path, StandardCharsets.UTF_8); }
而我要读的文件呢,是GBK!
也就是说,只要用GBK格式来读就可以了。修改如下:
public static void main(String[] args) throws IOException {String content = Files.readAllLines(Paths.get("C:/Users/DELL/Desktop/1.txt"), Charset.forName("GBK")).stream().collect(Collectors.joining("\n"));System.out.println(content);}