c# - IsolatedStorageFileStream 错误不允许操作

标签 c# silverlight windows-phone-7

当我尝试将文件内容保存在 fileStream fs 中时,出现 operation not permitted on IsolatedStorageFileStream 错误。

var appStorage = IsolatedStorageFile.GetUserStoreForApplication();
string[] fileList = appStorage.GetFileNames();

foreach (string fileName in fileList)
    {
       using (var file = appStorage.OpenFile(fileName, FileMode.Open))
       {
           if (fileName != "__ApplicationSettings")
           {
               var fs = new IsolatedStorageFileStream(fileName, FileMode.Open, FileAccess.Read, appStorage);
               string abc = fs.ToString();
               meTextBlock.Text = abc;
               //MemoryStream ms = appStorage.OpenFile(fileName, FileMode.Open, FileAccess.Read);

               clientUpload.UploadAsync(SkyDriveFolderId, fileName, fs);
          }
     }
}

最佳答案

为什么要添加内部 using (var file = appStorage.OpenFile(fileName, FileMode.Open))

在我看来,问题在于您正在打开一个流来读取文件,然后打开另一个流,而没有关闭前一个流!

如果您删除该行(似乎没有在那里做任何事情),它应该可以正常工作。

哦,fs.ToString() 只会为您提供类型名称,而不是文件内容;要读取文件,请使用带有 fsStreamReader

关于c# - IsolatedStorageFileStream 错误不允许操作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10200840/

相关文章:

windows-phone-7 - 如何制作或使用 WP7 的标准图像查看器

c# - 没有选定项目的列表选择器

c# - Unity 中使用 Instantiate(Resources.load) 方法缺少纹理的问题

silverlight - 在运行时动态指定和更改 Silverlight DataGrid 的列 (MVVM)

c# - 多个操作的并行化和结果的连接

c# - PagedViewCollection 按列分组,而不是属性

silverlight - 如何确认 XAML 中绑定(bind)了哪些属性?

c# - 如何使用代码优先方法做长文本

c# - 如何使用 C# 中的字符串从具有数据源集的列表框中删除项目

c# - 如果字符串包含Enter键或\n,则将其拆分