2014-05-02 21 views
2

也就是說,一個文件,該文件是住在這裏: https://dl.dropboxusercontent.com/u/19417676/snowbird_confusion.png(圖片鏈接,由於缺乏信譽的直接發佈)如何在Windows通用應用程序的共享項目下讀取項目文件?

教程和文檔鼓勵使用Windows.Storage命名空間,但運行我的項目,並列舉每個文件和文件夾時,當在Windows.Storage.ApplicationData中,顯示沒有任何東西存在。此外,本地,漫遊或臨時文件夾中也不存在任何內容。

使用Windows.ApplicationModel.Package.Current.InstalledLocation讓我接近,但它使我在...\Debug\AppX目錄。查看構建的項目結構時,包含我的.rtf文件的實際文件夾位於...\Debug\Tales中,而WinRT應用程序對於步行目錄結構的限制非常嚴格(更不用說它可能無法移植到Windows Phone)。

那麼,如何訪問此文件?

+0

整個AppX文件夾中是否還有其他副本?另外,你有沒有嘗試忽略'共享命名空間',只是把它當作文件夾在主項目中?所以如果你的共享文件夾是'/ Images',那就把它稱爲'/ Images/Filename.Ext'。 –

+0

解決它(如預期,在提出問題後不久)...。一旦計時器到期,我的解決方案就會發布。實質上,我忘記了將文件本身的Build Action更改爲Content。 – PingZing

回答

1

想通了。我已經正確地將我的.rtf文件設置爲Copy to output dir: Copy Always,但忘記將其Build Action更改爲Content

下面的代碼現在工作得很好。

StorageFolder folder = Windows.ApplicationModel.Package.Current.InstalledLocation; 
folder = await folder.GetFolderAsync("MyFolder"); 
StorageFile file= await folder.GetFileAsync("MyFile.rtf"); 
string rtfString = await Windows.Storage.FileIO.ReadTextAsync(file); 
相關問題