0

Windows Phone 7.1 のモバイル アプリケーションでテキスト ファイルを読み取る必要があります。私は自分のコードを書きます:

IsolatedStorageFile fileStorage = IsolatedStorageFile.GetUserStoreForApplication();
StreamReader Reader = null;
try
{
Reader = new StreamReader(new IsolatedStorageFileStream("folder\\file.txt", FileMode.Open, fileStorage));
string textFile = Reader.ReadToEnd();

textBlock.Text = textFile;
Reader.Close();
}
catch
{
MessageBox.Show("File it not created");
}

このファイルを読み込もうとすると、アプリケーションは常にメッセージボックスに「ファイルが作成されていません」というテキストを表示します。アプリケーションがファイルを見つけられない理由がわかりません。

4

1 に答える 1

0

他の何かがファイルを作成しましたか? そうでない場合、パスを持つファイルがないため、これは予想される動作です。これは、 「オペレーティング システムが既存のファイルを開く必要があることを示します。ファイルを開く機能は、 IsolatedStorageFileStreamFileAccessFileMode.Open列挙で指定された値に依存します。ファイルが開くと、System.IO.FileNotFoundException 例外がスローされます。存在しない。" ファイルを作成する必要がある場合は、FileMode.CreateNew「オペレーティング システムが新しいファイルを作成する必要があることを示します。これには FileIOPermissionAccess.Write 権限が必要です。ファイルが既に存在する場合は、IOException 例外がスローされます」または を試してくださいFileMode.CreateOrOpen

また、代わりにキャッチについて次のようなものを検討することもできます。これにより、より多くの情報が得られ、デバッグが高速化されます。

catch (Exception ex)
{
    MessageBox.Show("Exception opening file: " + ex.ToString());
}
于 2013-11-10T10:05:53.153 に答える