在ios应用程序中创建,读取和写入纯文本文件

时间:2014-07-24 08:29:20

标签: ios iphone ipad ios7 xcode5

我想要做的是编写一个方法,在调用时将创建一个带有预先编写的标题的纯文本文件(始终相同),然后定期用更多数据更新文本文件,直到用户请求停止为止。用户使用该应用程序的每个不同时间都需要一个新的文本文件。

我甚至难以让应用程序首先创建文本文件。有什么建议我可能需要做些什么来实现这个目标?

感谢。

1 个答案:

答案 0 :(得分:1)

查看以下代码,它会创建一个CSV文件。这正是您所需要的。如果文件不存在则会创建一个新文件并先写入标题,否则只需写入日志文本。

- (void)log:(NSString *)msg {

    NSString *fileName = [self logFilePath];

    // if new file the add headers
    FILE *file = fopen([fileName UTF8String], "r");
    if (file == NULL) {
        file = fopen([fileName UTF8String], "at");
        fprintf(file, "%s\n", "Date, Time, Latitude, Longitude, Speed, info");
    } else {
        fclose(file);
        file = fopen([fileName UTF8String], "at");
    }
    fprintf(file, "%s\n", [msg UTF8String]);
    fclose(file);
}

您应该在文档目录中创建文件,以下代码显示如何获取文档目录的路径

NSString *path = [NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES) lastObject];