ファイルにデータを追加できません

私は、ファイルを作成し、データを保存し、それにいくつかの情報を追加したい(例えば、次回のアプリケーションの起動時に)。私はこのコードを使用しています:

       IsolatedStorageFile myStore = IsolatedStorageFile.GetUserStoreForApplication();
       using (var isoFileStream = new IsolatedStorageFileStream("history.dat", FileMode.Append, FileAccess.Write, myStore))
       {
            //Write the data
            using (var isoFileWriter = new StreamWriter(isoFileStream))
            {
                isoFileWriter.WriteLine(m.Author + "|" + m.Receiver + "|" + m.Text + "|" + m.Date + "\r\n");
            }
       }

しかし、それは動作しません:/最初の行だけが保存されます - 私が作成したファイルに追加したいものはどこにもo_Oに行く私はまたこのアプローチを試みた:

            using (var isoFileStream = new IsolatedStorageFileStream("history.dat", FileMode.Open, myStore))
            {
               //Read the data.
                using (var isoFileReader = new StreamReader(isoFileStream))
                {
                    data = isoFileReader.ReadLine();
                }
            }

ファイルを確認するために、別のクラスとIsoStoreSpyアプリケーションを使用しました。 助けてください。

0

1 答え

あなたのコードを使用してうまく動作します。しかし、すべての行を読み込むためには、それらを反復する必要があります。そうでなければ、最初の行だけを読み込みます。

while (!isoFileReader.EndOfStream)
{
    string line = isoFileReader.ReadLine();
    System.Diagnostics.Debug.WriteLine(line);
}

テストされ、動作します。そして、行を書くときに新しい行( "\ r \ n")を追加する必要はありません。 WriteLine はこれを行います。

2
追加された
私はちょうどあなたのコードを使用しました - 追加作業、データは別のプログラムの開始を超えて保存されます。あなたのプロジェクトで何が違うのか分からない。
追加された 著者 Heinrich Ulbricht,
これはエミュレータとデバイス上で動作しています。
追加された 著者 Heinrich Ulbricht,
おめでとうございます;)
追加された 著者 Heinrich Ulbricht,
まだまだ!データを保存することは問題です。データを読み込むことはできません(私は外部のアプリケーションを使ってデータを読み込みます)。最初の行(ファイルの作成時に書かれます)だけが保存されます。 o_Oその奇妙な。
追加された 著者 Krzysztof Kaczor,
おそらくそのエミュレータの故障ですか?残念ながら、私はWP7デバイスに借りていません:/ OKこのコードは大丈夫です知って良い - 私はいくつかのテストを行います。
追加された 著者 Krzysztof Kaczor,
私はそれを理解した;)ヒントを提供していただきありがとうございます:)
追加された 著者 Krzysztof Kaczor,