Java でバイナリのシリアル化と逆シリアル化を使用するには、まず java.io に関連するパッケージを導入するか、 import java.io.* を直接記述する必要があります。
以下では、書き込み操作の便宜のために、ファイルをコピーして例外をスローして書き込みを行う方法を使用します。
次のようにコードをコピーします。
public void test6() が IOException をスローする {
byte[] b = new byte[1024];//バイト配列、バッファを定義
FileInputStream in = new FileInputStream("E://logo.gif");//入力ストリーム オブジェクトを作成する
FileOutputStream out = new FileOutputStream("E://My.gif");//出力ストリーム オブジェクトを作成する
DataInputStream input = new DataInputStream(in);//入力バイナリ ストリームを作成
DataOutputStream doout = new DataOutputStream(out);//出力バイナリ ストリームを作成する
int num = input.read(b);//バイナリファイルを b に読み込みます
while (数値 != -1) {
doout.write(b, 0, num);// 読み取った配列を出力ストリームに書き込みます
num = input.read(b); // 再度読み取ります。
}
//すべてのストリームオブジェクトを順番に閉じます
input.close();
doout.close();
in.close();
out.close();
System.out.println("コピーが成功しました!");
}
コードは参考のために省略してあります。
C# はバイナリのシリアル化と逆シリアル化の操作を使用します。まず、シリアル化と逆シリアル化を操作するために System.Runtime.Serialization.Formatters.Binary; を使用して名前空間を導入します。また、上記のインジケーター クラス [Serializable] を追加します。
例:
【シリアライズ可能】
次のようにコードをコピーします。
パブリッククラスPlayManager
{
/// <概要>
///データをシリアル化して保存する
/// </概要>
public void Save()
{
FileStream fs = null;
試す
{
fs = new FileStream("ファイルを保存するパス", FileMode.Create);
BinaryFormatter bf = 新しい BinaryFormatter();
bf.Serialize(fs, 保存するオブジェクト);
}
catch (例外例)
{
MessageBox.Show(例:メッセージ);
}
ついに
{
fs.Close();
}
/// <概要>
/// シリアル化情報をロードする
/// </概要>
パブリック void Load()
{
FileStream fs = null;
試す
{
fs = new FileStream("ファイル パス", FileMode.OpenOrCreate);
BinaryFormatter bf = 新しい BinaryFormatter();
オブジェクト受信 = (オブジェクトの型)bf.Deserialize(fs); //強制型変換
}
catch (例外例)
{
MessageBox.Show(例:メッセージ);
}
ついに
{
fs.Close();
}
これは C# でのシリアル化ファイルの使用です。実際、try-catch-finally を追加しない場合、必要なコードは 4 文だけです。
通り過ぎた友達、わかりますか?分からないことがあれば質問も可能です!