将CSV转换为JSON键值

时间:2015-02-22 11:35:26

标签: javascript php json node.js csv

我有一个像这样的CSV文件:

First Name*,Registrarse
Last Name*,Registrarse
Your Email*,Nombre*
Country*,Apellido*

我正在寻找将此转换为JSON的方式:

{
  "First Name*": "Registrarse",
  "Last Name*": "Registrarse"
   .....
}

我尝试了像CSV到JSON这样的NPM工具,但我无法获得这种效果。 有谁知道这样做的方法?

2 个答案:

答案 0 :(得分:1)

您可以将CSV文件转换为关联数组并将其编码为JSON:

$csv = <<<EOF
First Name*,Registrarse
Last Name*,Registrarse
Your Email*,Nombre*
Country*,Apellido*
EOF;

$csvArray = explode(PHP_EOL, $csv);

$jsonArray = array();
foreach ($csvArray as $row) {
    preg_match('/(.*?),(.*)/', $row, $matches);
    $jsonArray[$matches[1]] = $matches[2];
}

$json = json_encode($jsonArray, JSON_PRETTY_PRINT);
echo $json, PHP_EOL;

输出:

{
    "First Name*": "Registrarse",
    "Last Name*": "Registrarse",
    "Your Email*": "Nombre*",
    "Country*": "Apellido*"
}

答案 1 :(得分:-1)

稍微迟到这个帖子但是如果它对其他未来用户感兴趣的话。我创建了一个能够处理它的小型浏览器应用程序。

只需转到csvtojson.com并粘贴您的csv,它会根据需要输出给您。