2

私のロガー アプリケーションでは、ログを記録するためにファイルを開く必要があります。アプリケーションを閉じるときにストリームを閉じます。しかし、ログ ファイルの内容の読み取りもサポートする必要があります。そのため、ログ ファイルを開こうとすると、IsolatedStorageException-"Operation not が発生します。 Isolatestoragefilestream で許可されています"

サンプルコードは次のとおりです。

ログ ファイルの作成:

IsolatedStorageFile file = IsolatedStorageFile.GetUserStoreForApplication();
    file.CreateDirectory("/log");                
    var stream = file.OpenFile("/log/sample.log", 
    System.IO.FileMode.OpenOrCreate, System.IO.FileAccess.ReadWrite,
    System.IO.FileShare.ReadWrite);

ログ エントリ コード:

byte[] buffer = System.Text.Encoding.UTF8.GetBytes("Hello World");
    stream.Write(buffer,0,buffer.Length);
    stream.Flush();

内容を読む必要があるかもしれません:

IsolatedStorageFile file = IsolatedStorageFile.GetUserStoreForApplication();
//here i encounter isolated storage exception
    var stream = file.OpenFile("/log/sample.log", System.IO.FileMode.Open, 
    System.IO.FileAccess.Read,System.IO.FileShare.Read); <br>
    byte [] buffer = new byte[1024];<br>
    stream.Read(buffer, 0, buffer.Length);

サンプルファイルを読み書きモードで開いて、もう一度読み込みモードで開いてみましたが、それでも同じエラーが発生します.wp7では、ファイルが開いているときにファイルを読み取ることはできませんか?最初に開いたときにストリーミング>)。

提案があれば教えてください。

4

2 に答える 2

0

読み取り操作フラグを変更する必要があります。MSDNの記事によると:

読み取り 後で読み取るためにファイルを開くことができます。

あなたの場合、ReadWriteモードを使用することが望ましいです:

ReadWriteその後、読み取りまたは書き込みのためにファイルを開くことができます。

于 2013-01-03T10:08:42.413 に答える
0

私によると:

アプリの起動時にファイルの読み取りと書き込みモードを開き、ファイルの内容の読み取りと書き込みに同じファイルインスタンスを使用します。読み取りと書き込みのためにファイルを別々に開かないことを意味します。

于 2013-01-04T07:14:50.110 に答える