Java8 新API读取文件内容
来源:互联网 发布:微信打不开淘宝链接 编辑:程序博客网 时间:2024/06/05 20:28
使用Java8 提供的新API读取文件内容,代码简洁、方便。
1、测试代码
import java.io.IOException;import java.nio.charset.Charset;import java.nio.file.Files;import java.nio.file.Paths;import java.util.Arrays;import java.util.List;import java.util.stream.Collectors;import java.util.stream.Stream;/** * Java8 新API读取文件内容 * * Created by wangyingjie1 on 2017/2/22. */public class ReadFile { public static void main(String[] args) { try { String fileName = "D:\\SrcCode\\Java8InAction\\src\\main\\resources\\lambdasinaction\\chap5\\data.txt"; //读取文件 Stream<String> stringStream = Files .lines(Paths.get(fileName), Charset.defaultCharset()) .flatMap(line -> Arrays.stream(line.split(" "))); List<String> words = stringStream.collect(Collectors.toList()); System.out.println("words===>" + words); List<String> lineLists = Files .lines(Paths.get(fileName), Charset.defaultCharset()) .flatMap(line -> Arrays.stream(line.split("\n"))) .collect(Collectors.toList()); //输出文件函数 System.out.println("lineLists====" + lineLists.size()); //输出每一行文件内容 lineLists.stream().forEach(System.out::println); //统计单词的个数 long uniqueWords = Files.lines(Paths.get(fileName), Charset.defaultCharset()) .flatMap(line -> Arrays.stream(line.split(" "))) .distinct() .count(); System.out.println("There are " + uniqueWords + " unique words in data.txt"); } catch (IOException e) { e.printStackTrace(); } }}
2、文件data.txt
The quick brown fox jumped over the lazy dog
The lazy dog jumped over the quick brown fox
0 0
- Java8 新API读取文件内容
- 读取文件内容并替换内容后生成新文件
- Java8 新特性 日期API
- C++读取文件所有内容+写一个新文件
- Java8 编程(一) Java8 API的新特性
- java8实战十一:java8----新的日期时间API
- Java8新特性——时间API
- 使用java8新特性流API
- Java8新特性之Stream API
- java8 新的日期和时间api
- Java8:新的日期和时间API
- Java8学习笔记之新日期API
- java8 新的时期和时间API
- Java8 04 新日期时间API
- Java8新特性之Stream API
- Java8之新时间日期API
- API读取写入 ini文件内容的方法函数详解
- API读取写入 ini文件内容的方法函数详解
- MFC 创建对话框,最大化取消边框【重绘最大化,最小化,关闭按钮下篇文章在去描述】
- Linux之学习笔记一
- Ubantu下Spark独立应用程序编程的Java编程应用
- HDU4768:Flyer(二分)
- Html+CSS学习笔记
- Java8 新API读取文件内容
- 四种方法js实现点击<li>弹出索引
- UIlabel点击全文扩展
- 防止SQL注入的五种方法
- eclipse端口被占用(java.net.BindException: Address already in use: bind)解决方法
- 画“猫”神器
- 230. Kth Smallest Element in a BST
- 从《货殖列传》中学习炒股
- JavaScript面向对象编程之prototype对象