#node.js #csv
Вопрос:
У меня есть запись, которая выглядит так
name, value
Parent Name
MyName, MyValue
Parent Name
OtherName, OtherValue
Это должно привести к
[
{
name:"ParentName",
children: [
{
name: "myName",
value: "myValue"
},{
name: "otherName",
value: "otherValue"
}
]
}
]
Теперь я знаю, что это плохо скомпонованный CSV, но я не могу это контролировать, поэтому мне нужно использовать его так, как это делается в настоящее время. Я мог бы предварительно обработать его, но я не уверен, как бы я определил, является ли это родительской строкой или дочерней строкой.
Есть ли хороший способ проанализировать такого рода документы с помощью узла?
Комментарии:
1. Почему в одном месте отображается «Имя родителя», а в другом — «Имя родителя»?
2. Поскольку это совершенно нестандартно, вам просто нужно будет написать свой собственный код синтаксического анализа и логику. Непонятно, о чем еще вы просите помимо этого.
3. Вот к чему я как бы клоню соответствует ли это общему шаблону случайности
4. Это не «плохо собранные» данные, это просто «не данные CSV». CSV-это, самое большее, одна строка информации заголовка (имя каждого столбца с запятыми между именами), а затем каждая следующая строка — что неудивительно-значения, разделенные запятыми. Никаких пустых строк, никаких «внезапно появились новые имена». Просто строка за строкой значений, разделенных запятыми.
Ответ №1:
Это не формат CSV по какому-либо определению такого формата. Таким образом, вы не найдете никакого готового CSV-кода для анализа этого или для ввода его в желаемый вывод.
Вместо этого вам придется написать свой собственный код, чтобы прочитать его, проанализировать и организовать так, как вы хотите получить результат.