所以我使用fast-csv从csv文件中获取所有行。我使用的文件是UTF-16格式,并使用ucs2 readStream,我从文件中获取每条记录。
_csv.fromStream(stream, {headers: true, delimiter: '\t'})
.on("record", function(data) {
count ++;
console.log(data.Date);
var dataHash = hash(data);
if (!dict.hasOwnProperty(dataHash)) {
dict[dataHash] = 1;
} else {
dict[dataHash]++;
}
})
我在每一行中都把它划分为" |"分隔字符串。但是,日期不会再回来修正。如果我是console.log(数据),那么Date属性肯定存在,但我无法使用data.Date,data [" Date"]和data.hasOwnProperty(" Date" );也不起作用。该对象看起来像:
{
'Date': '07/10/2014',
'[Value 1]': 'xxx',
'[Value 2]': 'xxx',
'[Value 3]': 'xxx',
'[Value 4]': 'xxx',
}
有没有人见过这个,也许知道我做错了什么?
答案 0 :(得分:0)
问题与前导或尾随垃圾有关。我能够在fast-csv解析器上使用trim属性来解决问题。