【发布时间】:2011-12-27 13:37:03
【问题描述】:
我正在 iPhone 中编写内容。我用了这段代码
NSArray *paths = NSSearchPathForDirectoriesInDomains( NSDocumentDirectory, NSUserDomainMask, YES);
NSString *filePath = [[paths objectAtIndex:0]stringByAppendingPathComponent:@"data.txt"];
NSString *temp = [[NSString alloc] initWithString:@"my name is gaurav"];
[temp writeToFile:filePath atomically:YES encoding:NSUTF8StringEncoding error:nil];
[temp release];
当我试图用这段代码用新内容覆盖这个文件时
NSArray *paths = NSSearchPathForDirectoriesInDomains( NSDocumentDirectory, NSUserDomainMask, YES);
NSString *filePath = [[paths objectAtIndex:0]stringByAppendingPathComponent:@"data.txt"];
NSString *matter = [[NSString alloc] initWithString:@"Hello iPhone"];
[matter writeToFile:filePath atomically:YES encoding:NSUTF8StringEncoding error:nil];
[matter release];
如果我以原子方式传递 YES,则文件不会被覆盖。如果我在那里放置了否,那么文件将被覆盖,但程序也会停止并退出。
[matter writeToFile:filePath atomically:YES encoding:NSUTF8StringEncoding error:nil];
【问题讨论】:
-
另外,您在使用通过
NSError提供详细错误报告的方法时遇到问题,但您未能检查该错误。 -
你必须将你的字符串转换为 NSData
标签: iphone objective-c ios file-io filesystems