1

我正在尝试查找文件大小。

 NSFileHandle *output = [NSFileHandle fileHandleForWritingAtPath:self.finalPath]; 
//seek to begin of the file
[output seekToFileOffset:0];
NSData *mydata = [output availableData];
NSLog(@"length: %d", [mydata length]);

但我的长度等于零。为什么?

4

2 回答 2

11

availableData用于读取文件。如果您只想找出文件的大小,实际上不必打开它。像这样使用NSFileManager

NSDictionary *attributes = [[NSFileManager defaultManager] attributesOfItemAtPath:self.finalPath error:NULL];
unsigned long long fileSize = [attributes fileSize]; // in bytes
于 2012-02-28T10:03:50.847 回答
2

[fileHandler seekToEndOfFile],这个返回你文件数据的长度,你的代码[output seekToFileOffset:0]表示从0-0,所以没有数据

于 2014-06-24T12:47:51.690 回答