/**
*
*/
package com.gewb.stream;
import java.io.IOException;
import java.nio.charset.Charset;
import java.nio.charset.StandardCharsets;
import java.nio.file.Files;
import java.nio.file.Path;
import java.nio.file.Paths;
import java.util.stream.Stream;
/**
* @author Bingo.Ge
* @date 2020年6月16日
*/
public class CreateStream {
/**
* @param args
*/
public static void main(String[] args) {
Stream<String> createStreamFromFile = createStreamFromFile();
// System.out.println(createStreamFromFile);
}
/**
* 使用stream获取文件流
* @return
*/
private static Stream<String> createStreamFromFile() {
Path path = Paths.get("D:\\eclipse-workspace\\jdk8\\src\\com\\gewb\\stream\\Dish.java");
// 如编码类型为GBK则需要使用Charset.forName("GBK")方法指定,否则会报java.nio.charset.MalformedInputException: Input length = 1异常
try(Stream<String> streamFromFile = Files.lines(path, Charset.forName("GBK"))) {
streamFromFile.forEach(System.out::println);
return streamFromFile;
} catch(IOException e) {
throw new RuntimeException(e);
}
}
}