我想知道這是最好的方式(一個蘋果的指導方針或按常理建議)來存儲大文件的iOS應用程序..保存在iOS應用程序的大文件
隨着大我的意思是比如一場比賽的節省(可以說,比方說500kb),這樣,考慮plists是不可行的。
我應該使用普通的Cocoa文件管理API保存它嗎?標準stdio
(fopen
,fwrite
,不管)?
我想知道這是最好的方式(一個蘋果的指導方針或按常理建議)來存儲大文件的iOS應用程序..保存在iOS應用程序的大文件
隨着大我的意思是比如一場比賽的節省(可以說,比方說500kb),這樣,考慮plists是不可行的。
我應該使用普通的Cocoa文件管理API保存它嗎?標準stdio
(fopen
,fwrite
,不管)?
你的首要任務應該是整體的用戶體驗,包括:
以我的經驗,大文件操作往往是相對慢,但CPU是相對快,所以如果你有文本保存的一大塊,使用zlib的壓縮它保存作品(文本壓縮率很高,zlib非常快)。
有很多選擇,當然最好的取決於您的要求。如果您願意,您當然可以使用C標準I/O。如果你將所有的遊戲數據放在一個大緩衝區中,NSData的讀/寫文件方法很容易使用。如果你有一組實現NSCoding的對象,你可以使用NSKeyedArchiver/Unarchiver。
這裏有一種方法使用的NSFileManager找到您的應用程序的文件目錄:
NSString *docsDir = [NSHomeDirectory() stringByAppendingPathComponent: @"Documents"];
看起來好像已經有一個API用於編寫任何你想要的文件。 http://stackoverflow.com/questions/1526416/iphone-writing-binary-data我不確定是否有限制;至少我還沒有找到任何東西。 – Suroot