使用stream獲取文件流

/**
 * 
 */
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);
		}
	}

}

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章