![](/img/trans.png)
[英]Can't Reload UIImage from Saved file in iPhone Documents Directory location
[英]Can't read saved file from documents directory
我正在嘗試保存下載的文件,以便可以在另一個會話中打開它。 我將mp3數據保存到documents目錄,並將url保存到本地數據存儲中的文件。 當我檢查使用
if ([[NSFileManager defaultManager] fileExistsAtPath:musicObject[@"localFile"]]){
NSLog(@"applicationDocumentsDir exists");
}
else {
NSLog(@"File doesn't exist");
}
它返回“文件不存在”,但是我知道它是因為我已經打印出文件目錄,這給了我
“ file:/// private /var/mobile/Containers/Data/Application/94552DFC-022B-4962-9CB7-CCD87CB43E57/Documents/xDDsCbXAFhwEqGIzJfJRByEr1.mp3”,
我正在嘗試使用相同的路徑訪問它,但第一個是private 。 如何使文件不私有(我之前已在應用程序中保存了文件)
文件:/// var /mobile/Containers/Data/Application/AE27BD8F-5EEB-48FC-A8D4-E228F99CECE3/Documents/xDDsCbXAFhwEqGIzJfJRByEr1.mp3
我建議采取以下步驟:
Documents
目錄 Documents
目錄和提取的mp3文件名構建新路徑 如果我沒記錯的話, /var
是/private/var
的符號鏈接。 因此,根據路徑的構建方式,一個可能會最終成為另一個。
我繼承了一個項目,該項目也遇到了同樣的問題,但之間只有一個額外的隨機命名目錄。 最終,我刪除了前導的/private
組件,構造了一個路徑組件數組,並檢查了是否用當前值替換不存在的元素會導致現有文件。 您的情況應該更容易處理。
我不記得是什么時候,但是在某些時候,幾乎每次在模擬器中運行時,應用程序目錄(十六進制數字路徑組件)都開始發生變化。 從這種行為開始,這類問題就變得更加明顯。 盡管不應該保留完整的路徑,但我懷疑過去很多項目都不在乎。 一方面是因為事情剛剛開始,另一方面是因為很多人都不知道。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.