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");
}

一直以来,当我尝试阅读此文件时,应用程序都会向我显示带有文本“未创建文件”的 MessageBox。我不知道为什么应用程序找不到我的文件。

4

1 回答 1

0

是否有其他东西创建了该文件?如果不是,这是预期的行为,因为没有包含该路径的文件。在IsolatedStorageFileStream构造函数中,您传递了FileMode.Open,这表明“操作系统应该打开现有文件。打开文件的能力取决于 FileAccess 枚举指定的值。如果文件打开,则会引发 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 回答