私のクラス「DiaryManager」では、2つの異なるタイプ(T)の2つのリストを取得し、それをファイルに保存してから、ロードしたいと思います。これから紹介するリストの1つで動作するようになりました。
作業コードに保存してロードするリストの名前は「m_diary」です。保存方法は次のとおりです。
/// <summary>
/// Saves the object information
/// </summary>
public void Save()
{
// Gain code access to the file that we are going
// to write to
try
{
// Create a FileStream that will write data to file.
FileStream writerFileStream =
new FileStream(DATA_FILENAME, FileMode.Create, FileAccess.Write);
// Save our dictionary of friends to file
m_formatter.Serialize(writerFileStream, m_diary);
// Close the writerFileStream when we are done.
writerFileStream.Close();
}
catch (Exception ex)
{
MessageBox.Show(ex.Message);
}
}
そして私のロード方法はこれです:
/// <summary>
/// Load the object to the program
/// </summary>
public void Load()
{
// Check if we had previously Save information of our friends
// previously
if (File.Exists(DATA_FILENAME))
{
try
{
// Create a FileStream will gain read access to the
// data file.
FileStream readerFileStream = new FileStream(DATA_FILENAME,
FileMode.Open, FileAccess.Read);
// Reconstruct information of our friends from file.
m_diary = (List<Diary>)
m_formatter.Deserialize(readerFileStream);
// Close the readerFileStream when we are done
readerFileStream.Close();
}
catch (Exception ex)
{
MessageBox.Show(ex.Message);
}
}
}
「DATA_FILENAME」は次の定数です。
private const string DATA_FILENAME = "TrainingDiary.dat";
このコードは、私のWindowsフォームクラスから完全に機能します。しかし今、Ivは別のタイプのリストをもう1つ追加しました。
その2番目のリストを保存してロードするにはどうすればよいですか?:)
よろしくサイリックス