我正在尝试从我的App andbox中的Documents目录中的目录树中读取许多文件。 其中大多数是我读过的xml文件:
NSData *data = [NSData dataWithContentsOfFile:packagefile.
RXMLElement *rxml = [RXMLElement elementFromXMLData:data];
除了 一个 之外的所有内容都可以正常阅读。但 一个 无法读取,我收到错误代码256。 对于坏文件,我也可以尝试:
NSData *data = [NSData dataWithContentsOfFile:packagefile options:0 error:&err];
但是会返回相同的错误代码。 (因此我认为我的问题与文件的实际xml内容无关)。
清除沙箱并在我的应用程序中以编程方式复制所有文件没有任何区别。
这里有什么不对?我还能做什么?
答案 0 :(得分:0)
我找到了解决这个问题的方法('莫名其妙的错误代码256'。)希望这个解决方案对其他遇到此问题的开发人员有所帮助。
文档句柄已用完。
在我的应用程序中,我有一个记录功能,它将活动记录到文件中(有点像Log4J)。这需要每个记录的语句 - 使用'NSFileHandle'后跟'seekToEndOfFile'后跟'writeData'打开一个文件。
我错误地依赖ARC处理并在退出日志记录程序时关闭文件。显然,ARC 不关闭文件,最终系统用尽文件句柄。
解决方案只是在Java或C中调用'closeFile'。