Я создаю приложение, которое берет файл xml и превращает его в тип json перед тем, как сохранить его в базе данных. Я пытался конвертировать xml в json раньше, и для этого я использую xml2js.Однако, когда я пытаюсь предварительно проанализировать файл с помощью formidable, он возвращает следующую ошибку
throw this.error
^
Error: Text data outside of root node.
Line: 0
Column: 17
Char: d
мой код следующий для синтаксического анализа файла
var form = new IncomingFile()
form.parse(req, function(err, fields ,file){
if (err) console.log(err)
console.log(file)
//var filePath = file.path
var fileName = String(file.name)
, что для анализа, и я сохраняюфайл, используя следующий код
let src = path.join(__dirname, fileName);
let destDir = path.join(__dirname, 'files');
fs.access(destDir, (err) => {
if(err)
fs.mkdirSync(destDir);
copyFile(src, path.join(destDir, filename));
});
function copyFile(src, dest) {
let readStream = fs.createReadStream(src);
readStream.once('error', (err) => {
console.log(err);
});
readStream.once('end', () => {
console.log('done copying');
});
readStream.pipe(fs.createWriteStream(dest));
}
, и я конвертирую файл со следующим
xml = '../files'+fileName
result = convert.xml2js(xml,{ compact : true, spaces: 4,ignoreDeclaration : true});
Однако ошибка в функции convert.xml2js с вышеупомянутым выводом на консоль.Что-то не так с определением xml?или есть проблема с функцией записи файла?