[英]Stream cutting in 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 Spare_Time / TV
您可以这样做:
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();
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.