写入Objective C中的文件

时间:2012-06-10 12:36:34

标签: objective-c

我只是想在Objective C中写入.txt文件。这是代码:

BOOL success = [str writeToFile:@"tmp/cool.txt" atomically:YES encoding:NSUTF8StringEncoding error:&error];

    if(success)
    {
        NSLog(@"done writing!");
    }
    else
    {
        NSLog(@"writing failed: %@", [error localizedDescription]);
    }

此代码的输出是“文件夹cool.txt不存在”。我不明白这一点,因为“.txt”会认为它是文件。

我做错了什么?

2 个答案:

答案 0 :(得分:4)

我为你写了一个演示,假设你使用的是iOS。

NSString *path = [NSHomeDirectory() stringByAppendingPathComponent:@"tmp"]; //get tmp path
NSString *filePath = [path stringByAppendingPathComponent:@"cool.txt"];

NSString *str = @"hello world";
NSError *error;
[str writeToFile:filePath atomically:YES encoding:NSUTF8StringEncoding error:&error];

NSString *str1 = [NSString stringWithContentsOfFile:filePath encoding:NSUTF8StringEncoding error:&error];
NSLog(@"%@", str1);

答案 1 :(得分:0)

假设您使用iOS作为平台......

  1. 您需要首先获取应用程序的文档目录,以便您可以写入该目录(您可以使用库或临时目录,但文档目录最常见)

  2. 你必须确保' tmp'目录存在于文档目录下。