2011-11-12 4 views
0

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

 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アプリケーションを使用しました。 助けてください。

答えて

2

あなたのコードを使用して正しく動作します。

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

テストおよび作品:しかし、あなたがそれらを反復処理する必要があるすべての行を読み取るためにそうあなただけの最初の行を読んで。そして、行を書くときに新しい行( "\ r \ n")を追加する必要はありません。 WriteLineがこれを行います。

+0

まだ動作しません!データを保存することは問題です。データを読み込むことはできません(私は外部のアプリケーションを使ってデータを読み込みます)。最初の行(ファイルの作成時に書かれます)だけが保存されます。 o_Oその奇妙な。 –

+0

私はちょうどあなたのコードを使用しました - 追加作業は、データは異なるプログラムの開始の間に保存されます。あなたのプロジェクトで何が違うのか分からない。 –

+0

おそらくそのエミュレータの障害ですか?残念ながら、私はWP7デバイスに借りていません:/ OKこのコードは大丈夫です知って良い - 私はいくつかのテストを行います。 –

関連する問題