0

所以整个想法是这样的。我需要将这些调试控制台消息保存到一些字符串中,然后将其写入文本文件。我对文本文件部分的写入没有问题,因为我将使用 writeData,但第一部分有问题。

在控制台中,我在 UIImage 中打开损坏的图像文件时看到这些错误消息::Bogus Huffman 表定义或:IDAT:CRC 错误

我如何从控制台中提取这些信息并将它们复制到一个字符串中,因为我需要记录这些信息是一个状态文件。可能吗?

如果无法打开图像但我得到的字符串为 Null,我已经尝试过 [errorlocalizedDescription]。

另外,我使用
了 freopen([logPath cStringUsingEncoding:NSASCIIStringEncoding],"a+",stderr); 但问题是它通过文件路径将数据直接写入文本文件或日志文件。我想知道是否可以将其保存为字符串,以便我可以自定义我的日志文件,而不是与 stderr 相同的文件。

更新:

好的,我有一个想法,使用 freopen 方法,我可以不使用“a+”将其附加到日志文件并使用其他方式重复覆盖日志文件。然后我可以调用另一个函数来读取该文件并获取错误信息。

第二部分应该没问题,但我需要第一部分的帮助。除了“a+”我还能用什么?抱歉,我不确定所有这些 stderr 的东西。

任何帮助将不胜感激。谢谢

4

1 回答 1

0

我认为不可能以这种方式覆盖文件描述符。您可以通过定义自己的方式来覆盖 NSLog,但这不会捕获写入文件描述符的所有内容。

于 2010-06-28T13:19:03.910 回答