使用 UTF-8 CSV(英文和中文字符)的子属性创建 JSON 数组的最佳方法是什么?
What's the best way to create a JSON array with sub-properties from UTF-8 CSV (English & Chinese characters)?
我尝试使用 csvtojson 模块创建 GeoJSON 格式的文件,但嵌套根本无法正常工作。谁能给我指明正确的方向,还是我需要编写自己的代码?
> npx csvtojson input.tsv > output.json
input.tsv
properties.labelTc properties.labelEn properties.nameTc properties.nameEn properties.zoomifyX properties.zoomifyY geometry.coordinates.1 geometry.coordinates.0 properties.urlEn properties.urlZh type
皇城 The Imperial Palace City 明故宫 Ming Palace 105513 -1863 32.038 118.815 https://en.wikipedia.org/wiki/Ming_Palace Feature
天地壇 Altar of Heaven and Earth Guanghuamen? 105049 -1000 32.058 118.832 https://baike.baidu.com/item/%E5%A4%A9%E5%9D%9B/19964669 Feature
我想要的
{
"properties": {
"labelTc": "皇城",
"labelEn": "The Imperial Palace City",
...
},
"geometry": {
"coordinates": [118.815, 32.038]
},
"type": "Feature"
}
我得到了什么:
[
{
"properties": {
"labelTc\tproperties": {
"labelEn\tproperties": {
"nameTc\tproperties": {
"nameEn\tproperties": {
"zoomifyX\tproperties": {
"zoomifyY\tgeometry": {
"coordinates": {
"1\tgeometry": {
"coordinates": {
"0\tproperties": {
"urlEn\tproperties": {
"urlZh\ttype": "??\tThe Imperial Palace City\t???\tMing Palace\t105513\t-1863\t32.038\t118.815\thttps://en.wikipedia.org/wiki/Ming_Palace\t\tFeature"
}
}
}
}
}
}
}
}
}
}
}
}
},
由于我使用的是 Windows PowerShell,它使用 Latin-1 编码的扩展,默认情况下,我需要 csvtojson 库的标志和 PowerShell 的第二个标志。
npx csvtojson --delimiter=\t input.tsv > output.json -encoding utf8
我尝试使用 csvtojson 模块创建 GeoJSON 格式的文件,但嵌套根本无法正常工作。谁能给我指明正确的方向,还是我需要编写自己的代码?
> npx csvtojson input.tsv > output.json
input.tsv
properties.labelTc properties.labelEn properties.nameTc properties.nameEn properties.zoomifyX properties.zoomifyY geometry.coordinates.1 geometry.coordinates.0 properties.urlEn properties.urlZh type
皇城 The Imperial Palace City 明故宫 Ming Palace 105513 -1863 32.038 118.815 https://en.wikipedia.org/wiki/Ming_Palace Feature
天地壇 Altar of Heaven and Earth Guanghuamen? 105049 -1000 32.058 118.832 https://baike.baidu.com/item/%E5%A4%A9%E5%9D%9B/19964669 Feature
我想要的
{
"properties": {
"labelTc": "皇城",
"labelEn": "The Imperial Palace City",
...
},
"geometry": {
"coordinates": [118.815, 32.038]
},
"type": "Feature"
}
我得到了什么:
[
{
"properties": {
"labelTc\tproperties": {
"labelEn\tproperties": {
"nameTc\tproperties": {
"nameEn\tproperties": {
"zoomifyX\tproperties": {
"zoomifyY\tgeometry": {
"coordinates": {
"1\tgeometry": {
"coordinates": {
"0\tproperties": {
"urlEn\tproperties": {
"urlZh\ttype": "??\tThe Imperial Palace City\t???\tMing Palace\t105513\t-1863\t32.038\t118.815\thttps://en.wikipedia.org/wiki/Ming_Palace\t\tFeature"
}
}
}
}
}
}
}
}
}
}
}
}
},
由于我使用的是 Windows PowerShell,它使用 Latin-1 编码的扩展,默认情况下,我需要 csvtojson 库的标志和 PowerShell 的第二个标志。
npx csvtojson --delimiter=\t input.tsv > output.json -encoding utf8