次のコードサンプルは、ファイルをシリアライズ/逆シリアル化する方法を示しています。どのように私はファイルの代わりに変数にシリアル化するためにこれを変更できますか? (変数がファイル名の代わりに読み書きメソッドに渡されると仮定します)。変数にシリアライズする方法
public static void WriteObject(string fileName)
{
Console.WriteLine(
"Creating a Person object and serializing it.");
Person p1 = new Person("Zighetti", "Barbara", 101);
FileStream writer = new FileStream(fileName, FileMode.Create);
DataContractSerializer ser =
new DataContractSerializer(typeof(Person));
ser.WriteObject(writer, p1);
writer.Close();
}
public static void ReadObject(string fileName)
{
Console.WriteLine("Deserializing an instance of the object.");
FileStream fs = new FileStream(fileName,
FileMode.Open);
XmlDictionaryReader reader =
XmlDictionaryReader.CreateTextReader(fs, new XmlDictionaryReaderQuotas());
DataContractSerializer ser = new DataContractSerializer(typeof(Person));
// Deserialize the data and read it from the instance.
Person deserializedPerson =
(Person)ser.ReadObject(reader, true);
reader.Close();
fs.Close();
Console.WriteLine(String.Format("{0} {1}, ID: {2}",
deserializedPerson.FirstName, deserializedPerson.LastName,
deserializedPerson.ID));
}
どのようなタイプの変数を渡したいですか?文字列? MemoryStream? – Kibbee
あなたはどのような変数を覚えていますか? 'byte []'? – svick
'p1'は変数で、必要なものはすべて保持します。 –