在隔离存储中保存和读取文件

时间:2013-03-05 08:21:33

标签: windows-phone-7 isolatedstorage

我尝试在IsoStore中保存文件。在WP8模拟器文件已成功保存,但当我在其他模拟器或我的手机(使用WP7.8)上运行我的程序时,我收到一个错误:“路径必须是有效的文件名” 我这样做:

                         var path = @"\Shared\Media\mapp\";
                         var imageName = guid from the server;

                            if (!_fileStorage.DirectoryExists(path))
                                _fileStorage.CreateDirectory(path);

//here I get a error      using (IsolatedStorageFileStream fileStream =
                                _fileStorage.OpenFile(path + imageName,
                                                      FileMode.OpenOrCreate))
                            {//do anything}

我尝试设置path = @“iso:\ Shared \ Media \ mapp \”或@“isostore:\ Shared \ Media \ mapp \”或@“files:\ Shared \ Media \ mapp \”或@“ file:\ Shared \ Media \ mapp \“,它不起作用。 如果我在所有设备中设置@“\ Shared \ Media \”都很好。谁能告诉我为什么我无法创建目录?

1 个答案:

答案 0 :(得分:0)

对于Windows-Phone-7,您无法创建名称以“/”或“//”结尾的目录,这将导致“路径必须是有效的文件名”错误。

要解决您的问题,请稍微更改您的代码:

            var path = @"\Shared\Media\mapp";
            var imageName = guid from the server;

            using (IsolatedStorageFile store = IsolatedStorageFile.GetUserStoreForApplication())
            {
                if (!store.FileExists(path))
                {
                    store.CreateDirectory(path);
                }
                store.OpenFile(path + "\\" + imageName, FileMode.OpenOrCreate);
            }

希望,这有帮助。