我需要将.CSV转换为特定的.JSON格式,我决定使用NPM的csvtojson包,因为它似乎是为这类事物而设计的。
首先,我的问题有一点背景。我有.CSV数据看起来类似于:
scan_type, date/time, source address, source-lat, source-lng, dest address, dest-lat, dest-lng
nexpose,2016-07-18 18:21:44,1008,40.585260,-10.124120,10.111.131.4,10.844880,-10.933360
我有一个普通的csv-to-json转换器here,但是有一个问题。它输出一个相当简单的文件,我需要拆分源/目标,并添加一些特殊的格式,我将在稍后展示。
[
{
"scan_type": "nexpose",
"date/time": "2026-07-28 28:22:44",
"source_address": 2008,
"source-lat": 10.58526,
"source-lng": -105.08442,
"dest_address": "11.266.282.0",
"dest-lat": 11.83388,
"dest-lng": -111.82236
}
]
我需要做的第一件事是能够分离"来源"价值来自"目的地"值。这是我想要"来源"的一个例子。值看起来像:
( var destination 将是完全相同的格式)
var source={
id: "99.58926-295.09492",
"source-lat": 49.59926,
"source-lng": -209.98942,
"source_address": 2009,
x: {
valueOf: function() {
var latlng=[
49.58596,
-209.08442
];
var xy = map.FUNCTION_FOR_CONVERTING_LAT_LNG_TO_X_Y(latlng);
return xy[0]; //xy.x
},
y: {
valueOf: function(){
varlatlng=[
49.58596,
-209.08442
];
var xy = map.FUNCTION_FOR_CONVERTING_LAT_LNG_TO_X_Y(latlng);
return xy[1]; //xy.y
}
}
所以,我的问题是,我该如何处理转换数据?我应该用csvtojson转换所有内容吗?或者我应该从我生成的普通.JSON文件转换它吗?
有没有人有任何建议或类似的例子,他们可以分享如何解决这个问题?
答案 0 :(得分:0)
我在解析CSV数据方面做了很多工作,我相信你已经看到了,很难解析和使用CSV,因为有大量的边缘情况可以打破最坚固的解析器(虽然看起来您的数据集相当简单,但这并不是一个大问题)。更不用说通过在从磁盘读取时执行操作可能会导致损坏,因此将数据从CSV获取到JSON文件然后对从“普通”JSON加载的JSON对象进行任何操作是一个更好的主意。文件。
tl; dr:转换普通.JSON文件中的数据