iOS學習之iOS沙盒(sandbox)機制和檔案操作(二)
接上篇
iOS學習之iOS沙盒(sandbox)機制和檔案操作(一)
我們看看如何獲取應用程式沙盒目錄。包括真機的沙盒的目錄。
1、獲取程式的Home目錄
- NSString *homeDirectory = NSHomeDirectory();
- NSLog(@"path:%@", homeDirectory);
列印結果:
- 2012-06-17 14:00:06.098 IosSandbox[3536:f803] /Users/rongfzh/Library/Application Support/iPhone Simulator/5.1/Applications/3B8EC78A-5EEE-4C2F-B0CB-4C3F02B996D2
那在真機上的目錄有是怎麼樣的呢?我們看看
2012-06-17 14:25:47.059 IosSandbox[4281:f803] /var/mobile/Applications/3B8EC78A-5EEE-4C2F-B0CB-4C3F02B996D2
可見,真機上的目錄是/var/mobile/Applications/這個目錄下的,和模擬器不一樣。這個是Home目錄,其他的子目錄和模擬器一樣。
- NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
- NSString *path = [paths objectAtIndex:0];
- NSLog(@"path:%@", path);
- 2012-06-17 14:00:06.099 IosSandbox[3536:f803] path:/Users/rongfzh/Library/Application Support/iPhone Simulator/5.1/Applications/3B8EC78A-5EEE-4C2F-B0CB-4C3F02B996D2/Documents
- NSArray *paths = NSSearchPathForDirectoriesInDomains(NSCachesDirectory, NSUserDomainMask, YES);
- NSString *path = [paths objectAtIndex:0];
- NSLog(@"%@", path);
- 2012-06-17 14:03:50.431 IosSandbox[3628:f803] /Users/rongfzh/Library/Application Support/iPhone Simulator/5.1/Applications/3B8EC78A-5EEE-4C2F-B0CB-4C3F02B996D2/Library/Caches
4、獲取Library目錄
- NSArray *paths = NSSearchPathForDirectoriesInDomains(NSLibraryDirectory, NSUserDomainMask, YES);
- NSString *path = [paths objectAtIndex:0];
- NSLog(@"%@", path);
- 2012-06-17 14:07:17.544 IosSandbox[3733:f803] /Users/rongfzh/Library/Application Support/iPhone Simulator/5.1/Applications/3B8EC78A-5EEE-4C2F-B0CB-4C3F02B996D2/Library
- NSString *tmpDir = NSTemporaryDirectory();
- NSLog(@"%@", tmpDir);
- 2012-06-17 14:08:07.824 IosSandbox[3782:f803] /var/folders/g7/246bh79130zblw0yjjtc55cw0000gn/T/
- NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
- NSString *docDir = [paths objectAtIndex:0];
- if (!docDir) {
- NSLog(@"Documents 目錄未找到");
- }
- NSArray *array = [[NSArray alloc] initWithObjects:@"內容",@"content",nil];
- NSString *filePath = [docDir stringByAppendingPathComponent:@"testFile.txt"];
- [array writeToFile:filePath atomically:YES];
注:我們在真機上也執行一下,把檔案寫入,下一步從真機上把內容讀取出來。
寫入輸入 array ,裡面是兩個字串,一會我們讀出來列印。
寫入我們在程式沙盒目錄下看到檔案 testFile.txt
開啟檔案看到的內容是這樣的,是個xml格式的plist檔案,資料格式儲存了內容。
- <?xml version="1.0" encoding="UTF-8"?>
- <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
- <plist version="1.0">
- <array>
- <string>內容</string>
- <string>content</string>
- </array>
- </plist>
- NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
- NSString *docDir = [paths objectAtIndex:0];
- NSString *filePath = [docDir stringByAppendingPathComponent:@"testFile.txt"];
- NSArray *array = [[NSArray alloc]initWithContentsOfFile:filePath];
- NSLog(@"%@", array);
把上面的檔案解析後,把內容列印出來了。
- 2012-06-17 14:14:46.249 IosSandbox[3918:f803] (
- "\U5185\U5bb9",
- content
- )
真機上讀取並列印檔案路徑:
2012-06-17 14:25:47.059 IosSandbox[4281:f803] /var/mobile/Applications/3B8EC78A-5EEE-4C2F-B0CB-4C3F02B996D2/Documents/testFile.txt
(
"\U5185\U5bb9",
content
)
真機上也能寫入和列印。
著作權宣告:本文由http://blog.csdn.net/totogo2010/原創,歡迎轉載分享。請尊重作者勞動,轉載時保留該宣告和作者部落格連結,謝謝
相關文章
- iOS沙盒檔案目錄介紹iOS
- iOS 檔案操作簡介iOS
- Linux學習之檔案操作Linux
- iOS冰與火之歌 – 利用XPC過App沙盒iOSAPP
- (十七)Python學習之檔案操作Python
- 二十三、iOS簽名機制(二)iOS
- 深入iOS系統底層之映像檔案操作API介紹iOSAPI
- iOS 簽名機制iOS
- iOS複習(二)iOS
- 檔案操作(二進位制拷貝)
- iOS進階之訊息轉發機制iOS
- Python學習筆記|Python之檔案操作Python筆記
- iOS逆向之五 MACH O檔案解析iOSMac
- 黑科技:使用AI和機器學習將Android專案秒變IOS專案AI機器學習AndroidiOS
- 沙盒原始碼防洩密的安全機制原始碼
- ios訪問win10共享檔案的操作步驟_ios如何訪問win10共享檔案iOSWin10
- iOS學習筆記42 Swift(二)函式和閉包iOS筆記Swift函式
- GC機制+字元編碼+檔案操作GC字元
- iOS Jailbreak Principles - Undecimus 分析(一)Escape from SandboxiOSAI
- iOS SDWebImage 學習iOSWeb
- iOS 的看門狗機制iOS
- iOS-OC、Swift混編之橋接檔案iOSSwift橋接
- [譯] iOS 11:機器學習人人有份iOS機器學習
- 還在學iOS?是時候學習Flutter了(二)iOSFlutter
- 系統學習iOS動畫之零:說明和目錄iOS動畫
- iOS學習筆記15 序列化、偏好設定和歸檔iOS筆記
- iOS逆向學習之五(加殼?脫殼?)iOS
- iOS學習筆記20 地圖(二)MapKit框架iOS筆記地圖APK框架
- Redis學習之管道機制Redis
- 如何建立iOS證書和描述性檔案iOS
- iOS-Blocks學習iOSBloC
- iOS APP簽名機制詳解iOSAPP
- 快速瞭解iOS簽名機制iOS
- iOS——Objective C都有哪些鎖機制iOSObject
- iOS開發-UITableView的重用機制iOSUIView
- iOS之runtime詳解api(二)iOSAPI
- iOS SVN忽略檔案設定iOS
- iOS 逆向 - Mach-O檔案iOSMac
- ios檔案同步傳輸工具iOS