如何使用Perl将多个文件中的列复制到同一输出文件中

时间:2011-04-22 05:31:03

标签: perl

这是我的问题。

我需要将7个不同文件中的2列复制到同一个输出文件中。 所有输入和输出文件都是CSV文件。 我需要在已经复制的列旁边添加每对新列,以便最后输出文件有14列。

我相信我不能使用

open(FILEHANDLE,">>file.csv").

此外,所有7个CSV文件各有近20,000行,因此我逐行读取和写入文件。

如果你能给我一个关于我应该做什么的想法,那将是一个很大的帮助。

提前很多。

2 个答案:

答案 0 :(得分:2)

如果您的行是1:1(意味着您要组合File_1,File_2等第1行的数据):

  • 打开所有7个文件进行输入
  • 打开输出文件
  • 从所有输入文件中读取数据行
  • 将组合数据的行写入输出文件

答案 1 :(得分:1)

Text::CSV可能是 访问CSV文件的方式。

您可以为每个文件(包括输出)定义csv处理程序,使用getlinegetline_hr(返回hashref)方法获取数据,将其合并到arrayrefs中,而不是使用print