【发布时间】:2017-08-20 12:05:55
【问题描述】:
我正在尝试将 TSV 文件转换为 JSON 并使用 text2json 将其写入磁盘。
输入数据
最后有一个空行
U+2B695 shī
U+2B699 pū
U+2B6DB zhī
U+2B6DE jué
U+2B6E2 níng
U+2B6F6 chì
U+2B6F8 tí
测试
我用ava 运行了这个测试
import fs from "fs";
import test from "ava";
import jsonfile from "jsonfile";
import dataminer from "../src/dataminer";
test("extractPronunciation()", t => {
const filepath = "src/codepoint-ruby.tsv";
const data = dataminer.convertToJson(filepath, { separator: " " });
t.is(data > 0);
});
代码
而这个方法基于text2json:
import jsonfile from "jsonfile";
import text2json from "text2json";
export default {
convertToJson: (filepath, options) => {
const data = [];
const parse = new text2json.Parser({ ...options, hasHeader: true });
parse
.text2json(filepath)
.on("row", row => {
data.push(row);
})
.on("end", () => {
console.log("Done >>>>>");
return data;
});
},
};
问题
我看不到 end 事件被触发的痕迹,convertToJson() 什么也没返回,所以我的测试失败了,我错过了什么吗?
【问题讨论】:
标签: json node.js csv testing ava