在我的项目中,我NSlog
使用代码将数据重定向到文件
freopen([FilePath cStringUsingEncoding:NSUTF8StringEncoding],"a+",stderr);
我们遇到了一个问题,如果我们继续写入数据文件大小可能会大大增加,我们想要限制数据。假设文件大小达到 2MB 后,我想清除旧数据并写入新数据。
我们该怎么做,我们如何在运行时检查文件大小。
在我的项目中,我NSlog
使用代码将数据重定向到文件
freopen([FilePath cStringUsingEncoding:NSUTF8StringEncoding],"a+",stderr);
我们遇到了一个问题,如果我们继续写入数据文件大小可能会大大增加,我们想要限制数据。假设文件大小达到 2MB 后,我想清除旧数据并写入新数据。
我们该怎么做,我们如何在运行时检查文件大小。
为此,您可以使用NSFileManagerattributesOfItemAtPath:
的方法
NSError *err;
NSDictionary *fileAttributes = [[NSFileManager defaultManager] attributesOfItemAtPath:filePath error:&err];
NSNumber *fileSize = [fileAttributes objectForKey:NSFileSize];
if(//Check whether the size is above 2 MB)
{
//Remove old content by either removing file or clearing it
[[NSFileManager defaultManager] removeItemAtPath:filePath error:&err];
}
else
{
//Add data
freopen([filePath cStringUsingEncoding:NSUTF8StringEncoding],"a+",stderr);
}