2013-03-12 72 views
0

我在哪里可以找到我在windows phone 8中创建的文件夹和文本文件的位置。我们可以像浏览Windows 8中的应用程序数据一样在浏览器中看到它吗?我没有使用IsolatedStorage,而是使用Windows.Storage。我想检查文件夹和文件是否按我的意愿创建。在Windows Phone 8中创建的文件夹的位置

这是我写的文件

IStorageFolder dataFolder = await m_localfolder.CreateFolderAsync(App.ALL_PAGE_FOLDER, CreationCollisionOption.OpenIfExists); 
     StorageFile PageConfig = null; 

     try 
     { 
      PageConfig = await dataFolder.CreateFileAsync("PageConfig.txt", CreationCollisionOption.OpenIfExists); 
     } 
     catch (FileNotFoundException) 
     { 
      return false; 
     } 

编辑

 try 
     { 
      if (PageConfig != null) 
      { 
       using (var stream = await PageConfig.OpenStreamForWriteAsync()) 
       { 
        DataWriter writer = new DataWriter(stream.AsOutputStream()); 
        writer.WriteString(jsonString); 
       } 

      } 

     } 
     catch (Exception e) 
     { 
      string txt = e.Message; 
      return false; 
     } 

而且这是我从文件夹读取文件

 try 
     { 
      var dataFolder = await m_localfolder.GetFolderAsync(App.ALL_PAGE_FOLDER); 
      var retpng = await dataFolder.OpenStreamForReadAsync("PageConfig.txt"); 

      if (retpng != null) 
      { 
       try 
       { 
        using (StreamReader streamReader = new StreamReader(retpng)) 
        { 
         jsonString = streamReader.ReadToEnd(); 
        } 

        return jsonString; 
       } 
       catch (Exception) 
       { 
       } 
      } 
     } 
     catch (FileNotFoundException) 
     { 
     } 

还有其他创建文件夹。我在写作时没有收到任何异常,但是当我读取字符串时是空的。

回答

1

Windows.Storage.ApplicationData.LocalFolder(MSDN link here)是位于Windows.Storage名称空间中的隔离存储的另一个名称。您可以访问的唯一其他位置是您应用的安装目录(并且只能是只读的)。

您可以使用Windows Phone Power Tools来浏览应用程序隔离存储中的文件或SDK附带的命令行工具。

+0

谢谢,一些如何即使数据被写入,当我尝试读取它时,它失败。你认为我在写入或读取上面的函数时出错了吗? – alfah 2013-03-12 13:01:51

+0

使用Windows Phone Power Tools确认后,文件出现在您期望的位置,请尝试将'Windows.Storage.ApplicationData.LocalFolder'指向'dataFolder'。 – 2013-03-12 13:05:32

+0

是的我检查,文件存在,但它的空! :( – alfah 2013-03-12 13:14:50

0

在Windows Phone Power工具的帮助下,我发现文件中没有写入文本。 所以我将字符串转换为字节,然后将其写入文件,它的工作原理!不知道为什么其他人不工作,虽然..

using (var stream = await PageConfig.OpenStreamForWriteAsync()) 
{ 
    byte[] fileBytes = System.Text.Encoding.UTF8.GetBytes(jsonString);      
    stream.Write(fileBytes, 0, fileBytes.Length); 
} 
0

自带的Windows Phone SDK 8.0的命令行工具是独立存储资源管理器ISETool.exe),它驻留在“计划文件(x86)\ Microsoft SDKs \ Windows Phone \ v8.0 \ Tools \ IsolatedStorageExplorerTool“文件夹默认安装 ISETool.exe用于查看和管理本地文件夹的内容