Python包装函数行以生成用于读取的虚拟文件
我有一个我使用的应用程序,它读取一个大的非ASCIIlog文件,并且能够将文件输出到txt。应用程序API有一个“export_to_txt”函数,您可以在其中指定输出文件 我通常会生成输出的txt文件,然后对某些字符串进行读取,以挑选出感兴趣的特定值放入电子表格,然后在使用后删除该文件 导出到txt的功能如下所示,但我想知道是否可以以某种方式包装ExportToText行,将输出重定向到列表或其他对象,以便“虚拟”扫描txt以获取所需的值,而不是每次生成、打开、扫描然后删除txt文件。我不太确定,这可能吗Python包装函数行以生成用于读取的虚拟文件,python,io,Python,Io,我有一个我使用的应用程序,它读取一个大的非ASCIIlog文件,并且能够将文件输出到txt。应用程序API有一个“export_to_txt”函数,您可以在其中指定输出文件 我通常会生成输出的txt文件,然后对某些字符串进行读取,以挑选出感兴趣的特定值放入电子表格,然后在使用后删除该文件 导出到txt的功能如下所示,但我想知道是否可以以某种方式包装ExportToText行,将输出重定向到列表或其他对象,以便“虚拟”扫描txt以获取所需的值,而不是每次生成、打开、扫描然后删除txt文件。我不太确
def export_to_txt(self, output_path, delimeter=','):
if self.workgroup == None:
raise RuntimeError('workgroup not set')
value = self.workgroup.ExportToTxt(output_path, delimeter)
if value == 0:
raise RuntimeError('Failed to export to text file: %s' % self.application.Error)
或者,如果我可以同时生成虚拟文件和物理文件,则使用虚拟文件,然后在处理所有日志后删除包含物理文件的目录
谢谢你的阅读,
MikG输出路径是否只接受包含文件路径的字符串,或者是否也可以传递类似文件的对象?ExportToText是否接受StringIO或BytesIO对象?如果函数接受文件对象,则可以替换这些。嗨,输出路径只接受文件路径的字符串,而不接受StringIO/BytesIO,否则它会抱怨路径不正确,那么您需要IO级别的缓冲区/管道。你是linux还是windows?嗨,我用的是windows 7