将数据写入文件

时间:2011-10-25 15:33:18

标签: ios nsstring

我正在尝试使用我的应用中发生的操作制作txt日志文件。我想在应用程序连接到服务器时保存一些文本o显示新信息。

好吧,我该怎么写文件?我尝试过使用writeToFile方法:但它没有用,因为fileExistsAtPath:返回NO。

我的代码是:

NSString *file_path = @"mylog.txt"; 
NSString *log = @"Hello World!!\n"; 
[log writeToFile:file_path atomically:YES encoding:NSUnicodeStringEncoding error:nil]; 

谢谢!

PS:哦,是否可以通过插入iPhone的Organizer读取它?

2 个答案:

答案 0 :(得分:1)

你应该使用< App_Home> / Documents文件夹,用于存储文档

NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
NSString *documentsDirectory = [paths objectAtIndex:0];
NSString *file_Path = [documentsDirectory stringByAppendingPathComponent:@"log.txt"];    
[log writeToFile:file_path atomically:YES encoding:NSUnicodeStringEncoding error:nil];

但通常如果您想在运行应用程序时查看和转储内容, 你可以使用NSLog()在控制台中输出它。

答案 1 :(得分:1)

尝试我写的这个方法:

+(NSString*)createPath:(NSString*)fileName{
    NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
    NSString *documentsDirectory = [paths objectAtIndex:0];
    NSString *localizedPath = [documentsDirectory stringByAppendingPathComponent:[NSString stringWithFormat:@"%@",fileName]];

    //NSLog(@"%@",localizedPath);
    return localizedPath;
}

它将为您返回文件的路径。你只需要给它一个名字。