2016-07-28 4 views
-1

こんにちはシンプルなシリアライズ可能な問題があります間違った/機能しないシリアライズ可能

ここは私のクラスです。ゲッター、セッターと&キャッチ

public class myTrip implements Serializable { 
String NazovTripu; 
int den, mesiac, rok; 
String Mesto; 
String filename="prve.dat"; 

public String getFilename() { 
    return filename; 
} 

public void Serializuj(Context context){ 
    FileOutputStream fos = null; 
    fos = context.openFileOutput(filename, Context.MODE_PRIVATE); 
    ObjectOutputStream os = new ObjectOutputStream(fos); 
    os.writeObject(this); 
    os.close();  
} 

public myTrip DeSerializuj(Context context) { 
    FileInputStream fis = null;  
     fis = context.openFileInput(filename); 

    ObjectInputStream is = new ObjectInputStream(fis); 
    myTrip mojtrip = (myTrip) is.readObject(); 
    is.close(); 
    fis.close(); 
     return mojtrip;   
    return null; 
} 

public void DeSerializuj2(Context context) { 
    FileInputStream fis = null; 

     fis = context.openFileInput(filename); 

    ObjectInputStream is = new ObjectInputStream(fis); 
    myTrip simpleClass = (myTrip) is.readObject(); 
    is.close(); 
    fis.close(); 

} 

を試みることなく、私は2つの変異体が仕事をデシリアライズが、何もここに持っていない問題がどこにあるか、私は知りません。シリアル化またはデシリアライズであれば、私を助けてください:)

を私は1つの活動

myTrip prvy= new myTrip(); 
    ... 
    prvy.Serializuj(this); 

でこれを使用して、OnCreateの方法でこのコード他の活動は

myTrip prvy= new myTrip(); 
... 
prvy.DeSerializuj(this); 

アプリケーションがクラッシュしませんが、 varianlesには値がありません。ここ

+0

シリアライズとデシリアライズコード良いです。実際のコードを投稿してください。 'DeSerializuj2()'を取り除く。それは何も役に立たない。デシリアライズされたオブジェクトを返す必要があります。この場合、 'DeSerializuj() 'と同じです。 – EJP

答えて

0

は、このコードはコンパイルされません。..

public void Serializuj(myTrip serTrip){ 
    FileOutputStream fos = null; 
    try { 
     File file = new File(getApplicationContext().getFilesDir(), "data.dat"); 
     FileOutputStream fo = new FileOutputStream(file); 
     ObjectOutputStream ou = new ObjectOutputStream(fo); 
     ou.writeObject(serTrip); 
     ou.close(); 
     fo.close(); 
    } catch (Exception e) { 
     e.printStackTrace(); 
    } 
} 

public myTrip DeSerializuj() { 
    myTrip prvy = null; 
    try { 
     File file = new File(getApplication().getFilesDir(), "data.dat"); 
     FileInputStream fi = new FileInputStream(file); 
     ObjectInputStream oi = new ObjectInputStream(fi); 
    prvy = (myTrip) oi.readObject(); 
     oi.close(); 
     fi.close(); 
    } catch (Exception e) { 
     e.printStackTrace(); 
    } 
    return prvy; 
} 
関連する問題