3
我想讀對象的序列化的文件,但我想與Java 8的泛函編程功能實驗;但是,我不斷收到一個MalformedInputException。很明顯,Files.lines讀取Stream < String>,而不是對象。 (Files class in Oracle Documentation.)因此,格式錯誤的輸入 - 它不能處理字符串的序列化字符與它使用的字符集。有沒有辦法在Java中讀取使用Files.lines系列化文件8
我通常會使用ObjectInputStream,但我有心情去嘗試新的東西。在Java 8中缺少的東西,允許使用lambdas上下文中的流來讀取序列化文件?
如果您有興趣,這是我在學習它創建流之前所做的嘗試< String>(WordDefinitions。
:基本上只用於實驗的字符串) - 逸是一個序列化的文件從一個類叫我定義保存自定義數據類對象我甚至嘗試進行明確的轉換:
List<String> defsList =
Files.lines(Paths.get("WordDefinitions.dat"))
.map(item -> {
Definition temp = (Definition)item;
return temp.toString();
})
.collect(Collectors.toList());
不,你不會錯過任何東西。沒有等效的Files.lines()會返回Stream