我正在使用NSUserDefaults.standardUserDefaults()來保存從WebService到iPhone內存的JSON字符串。當我加載它來使用我的解析器功能時,處理速度非常慢。我不想使用RealmIO或任何數據庫,因爲這個東西沒有必要。我想問有沒有比NSUserDefaults更快的方法? Please check my JSON file (I need store more than 20 files like that)IOS如何保存並加載JSON字符串到內存
0
A
回答
0
而不是將您的數據保存到NSUserDefaults
,您應該將其保存到不同的文件,這將會更有效。
這裏是你如何能做到這:
// Build file url
let documentsURL = NSFileManager.defaultManager().URLsForDirectory(.DocumentDirectory, inDomains: .UserDomainMask).last!
let fileURL = documentsURL.URLByAppendingPathComponent("file_1.json", isDirectory: false)
// Write
let jsonString = "..."
let jsonData = jsonString.dataUsingEncoding(NSUTF8StringEncoding)
do {
try jsonData?.writeToURL(fileURL, options: NSDataWritingOptions())
} catch {
NSLog("Writing file to `\(fileURL)` failed with error : \(error)")
}
// Read
do {
let jsonData = try NSData(contentsOfURL: fileURL, options: NSDataReadingOptions())
let jsonString = String(data: jsonData, encoding: NSUTF8StringEncoding)
} catch {
NSLog("Reading file at url `\(fileURL)` failed with error : \(error)")
}
0
是NSUserDefaults的不是一個數據庫。如果您的JSON文檔超過100 KB,則將它們存儲在單獨的文檔中。請注意,每次更改任何用戶默認值時,所有用戶默認值都必須寫入文件。如果您有20個每個1MB的JSON文檔,那麼每個用戶默認情況下您將更改爲,寫入20MB或更多。
相關問題
- 1. 在iOS中保存並加載多個字符串到UITextView
- 2. 保存和加載字符串
- 3. 如何將JSON字符串保存到iOS中的一個字段?
- 4. 如何在iOS中爲objectiveC字符串保護dealloc內存?
- 5. 如何保存字符串?
- 6. 如何在web api中接收並保存JSON字符串
- 7. 下載文件並保存到內存
- 8. 簡單TListView保存並加載文件(僅保存列字符串值)
- 9. 如何保存從JSON加載的特殊字符
- 10. 在字符串下保存並加載ArrayList?
- 11. 如何散列或JSON字符串保存到一個jsonb場
- 12. 如何在字符串中加載和保存plist?
- 13. 如何以json字符串的形式將對象保存到數據庫並稍後重新加載?
- 14. 如何將字符串轉換爲JSON並將數據保存到數組中?
- 15. 如何將循環JSON對象字符串化並將其保存到文件?
- 16. IOS - NSJSONSerialization保存JSON到ipad
- 17. 將webview內容保存到android存儲並加載它
- 18. 字符串保存爲JSON在Django
- 19. 如何消除部分字符串並保存到變量中?
- 20. 如何拆分字符串並將其保存到數組
- 21. 如何將字符串內容保存到本地文件
- 22. 保存和加載UIImage從/到字符串
- 23. 保存/加載IOS數據
- 24. 保存並加載ListView內容
- 25. 將字符串添加到位圖圖像並保存vb
- 26. 如何保存並加載複選框,如保存文件 - php
- 27. 如何使用Spire PDF將文件保存並加載到內存流C#
- 28. 如何在mysql字段中保存json字符串
- 29. 保存並加載用戶縮放的內容uiscrollview ios
- 30. 如何存儲JSON響應並保存到JSON文件
不是JSON字符串,而是JSON數據。 JSON文件不是字符串。所有接口都期望或生成NSData。 – gnasher729