【发布时间】:2015-12-14 19:54:34
【问题描述】:
我正在尝试读取对象的序列化文件,但我想体验 Java 8 的功能性编程特性;但是,我不断收到 MalformedInputException。显然, Files.lines 读取的是 Stream
我通常会使用 ObjectInputStream,但我有心情尝试一些新的东西。 Java 8 中是否缺少允许在 lambdas 上下文中使用流从序列化文件中读取的内容?
如果您有兴趣,这是我在得知它正在创建 Stream
List<Definition> defsList =
Files.lines(Paths.get("WordDefinitions.dat"))
.collect(Collectors.toList());
我什至尝试了显式转换:
List<String> defsList =
Files.lines(Paths.get("WordDefinitions.dat"))
.map(item -> {
Definition temp = (Definition)item;
return temp.toString();
})
.collect(Collectors.toList());
【问题讨论】:
-
不,你没有错过任何东西。没有等效的 Files.lines() 会返回 Stream
-
谢谢!感谢您的意见。
标签: serialization file-io lambda java-8 java-stream