簡體   English   中英

將BitSet寫入輸出文件沒有開銷?

[英]Writing BitSet to output file without overhead?

使用ObjectOutputStream.writeObject()將BitSet寫入輸出文件時,我獲得了一線開銷( "java.util.BitSet" ObjectOutputStream.writeObject()

不管怎么說呢?

這不是一個“開銷”,它不是讓Java知道在從該文件反序列化對象時需要創建什么類型的標記。

由於ObjectInputStream不知道您將哪些序列化到文件中,並且無法提供“提示”,因此ObjectOutputStream必須“嵌入”輸入流的某些內容才能決定需要實例化哪個類。 這就是為什么它將"java.util.BitSet"字符串放在BitSet數據的前面。

使用BitSet類中內置的序列化功能時,無法繞過編寫此標記。 如果您將對象自行序列化為文件,而沒有其他對象,則可以將toByteArray()調用的結果寫入文件,並在從文件中讀取byteArray后調用BitSet.valueOf(byteArray)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM