java - java8中的流切割
问题描述
什么是切流的好方法?我刚刚启动了 java 8,我被困在这个问题上。我正在从文件中读取几个输入日期,然后打印它们。我的问题是如何在日期和字符串之间精确切割?可以使用“标签”吗?到目前为止我所拥有的:
public static void main( String[] args ) throws IOException
{
Supplier<Stream<String>> fisier=()->{
try {
return Files.lines(Paths.get("Activities.txt"));
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return null;
};
fisier.get().forEach(System.out::println);
//fisier.get().filter(predicate)
//List<String>out=getFilterOutput(fisier.get()," ");
}
我已经考虑过过滤信息,但我怎么知道要看什么>?文件中的一行如下所示:
2011-12-11 15:43:51 2011-12-11 21:41:48 空闲时间/电视
解决方案
你可以这样做:
List <String> firstDate = new ArrayList<>();
List <String> secondDate = new ArrayList<>();
List <String> showName = new ArrayList<>();
try (Stream<String> stream = Files.lines(Paths.get(fileName))) {
stream.forEach(line -> {
String[] parts = line.split("\\s+");
firstDate.add(parts[0] + parts[1]);
secondDate.add(parts[2] + parts[3]);
showName.add(parts[4]);
});
} catch (IOException e) {
e.printStackTrace();
}
推荐阅读
- django - Django 网络钩子
- excel - 通过 Excel Odata 连接访问 ABAP CDS 时出现“STRING_SIZE_TOO_LARGE”
- python - 导入 spacy 时出现 ModuleNotFoundError(没有名为“pkg_resources.extern”的模块)
- flutter - 如何使用 Light House 检查 Flutter Web 应用程序的性能?
- node.js - 设置和托管动态 CRON 作业?
- quickbooks - 识别 Quickbooks 中所有用户通用的现金流量表、损益表和资产负债表报告中的行条目
- php - 在laravel中使用elequent过滤,显示所有数据开始
- dolphindb - 如何从dolphindb中的给定日期获取月份?
- docker - 奇点运行或执行命令同 docker run
- neo4j - 在 neo4j 中显示自定义输出时出现问题