iphone - 如何以附加模式写入文本文件

标签 iphone uitextview nsfilehandle

我的应用程序基于导航。 UItextView 用于注释 UIViewController。我正在将文本数据写入文件。现在我需要在附加模式下编写,我正在尝试以下代码,但每次都使用相同的文本数据写入两次,并且不附加下一个文本数据到文件。

- (void)saveText:(id)sender
{
    [self.textview resignFirstResponder];
    NSArray *documentPaths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES); 
    NSString *documentsDirectory = [documentPaths objectAtIndex:0];
    NSString *documentTXTPath = [documentsDirectory stringByAppendingPathComponent:@"Notes.txt"];
    NSString *savedString = textview.text;
    [savedString writeToFile:documentTXTPath atomically:YES];


    NSFileHandle *myHandle = [NSFileHandle fileHandleForUpdatingAtPath:documentTXTPath ];
    [myHandle seekToEndOfFile];
    [myHandle writeData:  [savedString dataUsingEncoding:NSUTF8StringEncoding]];
    [myHandle closeFile];

}

最佳答案

删除以下代码行

[savedString writeToFile:documentTXTPath atomically:YES];

剩下的代码都很好。无论如何也检查我的代码,

    NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory,NSUserDomainMask, YES);
    NSString *documentsDirectory = [paths objectAtIndex:0];
    NSString *documentTXTPath = [documentsDirectory stringByAppendingPathComponent:@"Notes.txt"];
    NSString *savedString = textview.text;
    NSFileHandle *myHandle = [NSFileHandle fileHandleForWritingAtPath:documentTXTPath];
    [myHandle seekToEndOfFile];
    [myHandle writeData:[savedString dataUsingEncoding:NSUTF8StringEncoding]];

关于iphone - 如何以附加模式写入文本文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4779877/

相关文章:

swift - 如何从 UITextView 附件 View 中的 UIBarButtonItem 呈现弹出 View

ios - 具有可变高度的 UIScrollView

ios - 将数据写入设备上的文件并从设备中读回(iPhone)

ios - 自定义 UIActivityViewController 以仅显示选定的应用程序,不包括 AirDrop 功能和底行操作?

iphone - 如何将新数据保存到现有单元格中?

ios - 将 UITextView 的高度调整为其文本无法正常工作

iOS ALAssetsLibrary 和 NSFileHandle 读取文件内容

iphone - 钥匙串(keychain)中缺少私钥iphone开发者

iphone - 当iPhone处于飞行模式时,CLLocationManager会在第一次获取纬度和经度值。