我想要做的是编写一个方法,在调用时将创建一个带有预先编写的标题的纯文本文件(始终相同),然后定期用更多数据更新文本文件,直到用户请求停止为止。用户使用该应用程序的每个不同时间都需要一个新的文本文件。
我甚至难以让应用程序首先创建文本文件。有什么建议我可能需要做些什么来实现这个目标?
感谢。
答案 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];