2017-12-02 10 views
-3

は私がserialisableのように定義されたオブジェクトを持っています。このオブジェクトはビットマップ以外の出力ファイルに書き込まれているすべての変数の値をWriteObjectは使用してObjectOutputStreamに書き込まれブール値の配列をシリアル化する方法は?

public class Tento3DToken implements java.io.Serializable 
{ 
    private int idToken; 
    private int dimension; 
    private boolean[][][] bitmap; 
    private String authorisedBy; 
    private int runNumber; 

    public Tento3DToken(int d, String a, int r) 
    { 
     dimension = d; 
     authorisedBy = a; 
     runNumber = r; 
     bitmap = new boolean[d][d][d]; 
     idToken = 0; 
    } 

。どのようにビットマップをシリアル化できますか?

+2

どういう意味ですか?この問題をどのように診断しましたか? –

+1

もちろん、再現できません:https://ideone.com/OAhckQ。だから閉じようとしている。 –

+0

私はバイナリファイルビューアでシリアル化の出力ファイルを調べて問題を診断しました。すべてのコンテンツが保存されているにもかかわらず、ファイルは約400Kであったはずですが、それはわずか40Kでした。チェックすると、ビットマップが保持する値を除くすべての値が保存されました。 – NigelGordon

答えて

0

明らかにブール配列はシリアル化できません。ビットマップを一時的にし、配列をBitSetにコピーしてシリアル化することで、この問題を解決しました。

関連する問題