Apache Pig处理CSV,字段用引号括起来

时间:2013-07-18 08:27:38

标签: java csv apache-pig

如何处理CSV文件,其中某些字段用引号括起来?

例如,要处理的行(字段分隔符为',')

  

我是column1,我是第2列,"是的,我是第3列"

该示例有三列。但是下面的例子会说我有四列:

  

A = load' / path / to / file'使用PigStorage(',');

请提出任何建议,链接到资源..?

1 个答案:

答案 0 :(得分:0)

尝试加载数据,然后执行FOREACH GENERATE以将数据重新生成为您需要的任何格式。对于需要删除引号的字段,请使用REPLACE($ 3,' \"')。

data = LOAD 'testdata' USING PigStorage(",");
data = FOREACH data GENERATE
    (chararray) $0                AS col1:chararray,
    (chararray) $1                AS col2:chararray,
    (chararray) REPLACE($3, '\"') AS col3:chararray);