我目前正在学习 Java 8 和 JAVA 9 的流。问题是如何首先跳过END OF HEADER位置之后的文件行(文件的倒数第二行),然后计算每个值(剩余的数字)并且是可以在流上完成我的任务吗?
2.10 N: GPS NAV DATA RINEX VERSION / TYPE
teqc 2017Feb10 UNAVCO Archive Ops 20170418 19:33:16UTCPGM / RUN BY / DATE
9.2160D+04 -1.1469D+05 -1.3107D+05 7.2090D+05 ION BETA
9.313225746155D-10 3.552713678801D-15 233472 1930 DELTA-UTC: A0,A1,T,W
END OF HEADER
29 17 1 1 2 0 0.0 6.356909871101D-04-2.046363078989D-12 0.000000000000D+00
开始这样做:
try {
Files.lines(Paths.get("src/main/java/ab010010.17n"), StandardCharsets.UTF_8).// дальше что применять и множества методов?;
} catch (IOException e) {
e.printStackTrace();
}
Java9 引入了 stream 方法
dropWhile,这让你的工作变得容易多了:如前所述,您可以使用
dropWhileJava 9 解决该问题,但您也可以在 Java 8 中编写自己的方法,该方法将执行类似的操作,例如,如下所示:然后在您的代码中使用此方法: