作爲一種習慣,我正在嘗試編寫類似於內置便箋應用程序的應用程序。
但我不知道如何保存文件並將其顯示在UITableView
。
現在,我有一個UITextView
,用戶可以輸入。我也有一個保存按鈕。
當用戶點擊保存按鈕時,我想保存它,並稍後將其顯示在表格視圖中。
我很失落,所以如果你知道任何相關的教程等,將不勝感激。在iPhone上書寫和閱讀文本文件
6
A
回答
23
正如現實世界中的評論者所指出的那樣,您一定會想看看Core Data或其他一些數據持久性策略。如果你已經無法追求這種學習體驗,那麼類似這樣的事情應該可以解決你的問題:
- (void)writeStringToFile:(NSString*)aString {
// Build the path, and create if needed.
NSString* filePath = [NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES) objectAtIndex:0];
NSString* fileName = @"myTextFile.txt";
NSString* fileAtPath = [filePath stringByAppendingPathComponent:fileName];
if (![[NSFileManager defaultManager] fileExistsAtPath:fileAtPath]) {
[[NSFileManager defaultManager] createFileAtPath:fileAtPath contents:nil attributes:nil];
}
// The main act...
[[aString dataUsingEncoding:NSUTF8StringEncoding] writeToFile:fileAtPath atomically:NO];
}
- (NSString*)readStringFromFile {
// Build the path...
NSString* filePath = [NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES) objectAtIndex:0];
NSString* fileName = @"myTextFile.txt";
NSString* fileAtPath = [filePath stringByAppendingPathComponent:fileName];
// The main act...
return [[[NSString alloc] initWithData:[NSData dataWithContentsOfFile:fileAtPath] encoding:NSUTF8StringEncoding] autorelease];
}
+0
它比使用[NSString writeToFile](https://developer.apple.com/library/mac/#documentation/Cocoa/Reference/Foundation/Classes/NSString_Class/Reference/NSString.html)更好嗎? – 2013-02-14 16:00:16
1
最簡單的保存文本的方法是使用NSUserDefaults。
[[NSUserDefaults standardUserDefaults] setObject:theText forKey:@"SavedTextKey"];
,或者,如果你想擁有的用戶名每個「文件」或能有多個文件
NSMutableDictionary *saveTextDict = [[[[NSUserDefaults standardUserDefaults] objectForKey:@"SavedTextKey"] mutableCopy] autorelease];
if (saveTextDict == nil) {
saveTextDict = [NSMutableDictionary dictionary];
}
[saveTextDict setObject:theText forKey:fileName];
[[NSUserDefaults standardUserDefaults] setObject:saveTextDict forKey:@SavedTextKey"];
相關問題
- 1. iPhone文本文件閱讀
- 2. 寫/閱讀plist文件iPhone
- 3. 閱讀和文本文件
- 4. iPhone SDK - 如何閱讀文本文件
- 5. 閱讀文本文件 - iPhone SDK
- 6. 在iPhone上閱讀資源文本文件
- 7. 如何閱讀J2ME /寫文本文件
- 8. 寫在PDF文件閱讀
- 9. 書寫,閱讀和.NET
- 10. 閱讀/寫作 - 文本文件或PostGres,請閱讀更多
- 11. 安裝在iPhone上的閱讀證書
- 12. iPhone - 閱讀.epub文件
- 13. * .dbf文件閱讀器iphone
- 14. 在iPhone中讀取和寫入文件
- 15. 如何閱讀和文本文件
- 16. Python閱讀和打印文本文件
- 17. 閱讀和解析文本文件android
- 18. VBScript來閱讀文本文件和
- 19. 閱讀大文本文件和內存
- 20. 查找和閱讀文本文件
- 21. printf和閱讀文本文件
- 22. 搜索和閱讀文本文件
- 23. 閱讀文本文件和concat行
- 24. pdf文件文本閱讀和搜索
- 25. 閱讀文本文件和洗牌
- 26. 閱讀txt文件和解析文本
- 27. 閱讀和寫入C文本文件的問題#
- 28. 閱讀和編寫列表文本文件
- 29. 閱讀,操作和編寫文本文件C#
- 30. PHP寫作和閱讀到文本文件
,你可能不希望聽到的答案爲「不要使用文本文件「。你可以看看一些內置的序列化策略(plist)。 – hanno 2011-02-11 00:18:38
@hanno - 我還會補充說,比plists更好,使用Core Data。它快速,高效,更重要的是,*可擴展*。 – 2011-02-11 00:24:01