haitao:
上次讨论了一个内部带buffer的文件读取类,提供按字节输出的方法。但是到我的应用里一看,发现问题不是在这里。。。。。
[阅读: 374] 2008-06-08 14:22:03
上次讨论了一个内部带buffer的文件读取类,提供按字节输出的方法。但是到我的应用里一看,发现问题不是在这里。。。。。
而是在于:处理分多步骤进行,每一步骤都是对上一步骤的处理结果,按字节进行本步骤的处理。。。。。
相当于:type file*.ext | dosteop1 | dostep2 | ...
而type file*.ext相当于输出:
file1.ext的文件名
file1.ext的文件内容
file2.ext的文件名
file2.ext的文件内容
。。。
fileN.ext的文件名
fileN.ext的文件内容
而dostep1对这个合并后的内容进行处理,不知道dos/*nix是不是真的:先,生成这样的临时文件(包含完整的合并后的内容),再,对单一文件流进行处理的?
而我的应用,完整的处理对象其实是把多个字符串、数据结构、文件内容合并在一起,然后作为dostep1的输入
但是,
既不想把它们全部先在内存里合并(这样,如果文件很大,占用的内存量就会很大了!虽然可能只是瞬间);
也不想把它们全部先在输出到临时文件,再以单一的文件流读进来处理(这样,占用的内存可以不大,效率也可以通过内部buffer提高。但是毕竟有一个临时文件写的操作。。。。)。
不知道,说清楚没有。。。。。。。。。。