xml2parsing으로 데이터를 추출하여 사용자 정의 json을 작성하려고합니다. 지금까지 내가 가진이 :xml2js 구문 분석 - 메타 데이터 속성 값을 추출하는 방법?
function createCustomJson(d{
let dataFromXml = "";
parseString(d, {trim: true}, function (err, result) {
dataFromXml = JSON.stringify(result);
});
let dataJson = { data: [] };
let dataObj = JSON.parse(dataFromXml);
let dataForJson = dataObj.dataset.data[0];
let metadataForJson = dataObj.dataset.metadata[0];
let pom = {};
for (var i = 0; i < dataForJson.row.length; i++) {
for (var j = 0; j < dataForJson.row[0].value.length; j++) {
pom["METADATA-ATTR-NAME"] = dataForJson.row[i].value[j];
}
dataJson.data.push(pom);
}
let json = JSON.stringify(dataJson);
}
XML :
<?xml version="1.0" encoding="utf-8"?>
<dataset xmlns="http://example.com" xmlns:xs="http://www.w3.org/2001/XMLSchema-instance">
<metadata>
<item name="DATA_1" type="xs:string" length="2102"/>
<item name="DATA_2" type="xs:string" length="24"/>
</metadata>
<data>
<row>
<value>active</value>
<value>whatever</value>
</row>
</data>
</dataset>
내가 "데이터"에서 모든 값을 추출 할 수 있었다, 그러나 (메타 데이터 항목 이름을 얻는 방법을 데이터 1을 모르고 DATA_2).
metadataForJson.item[0]
에 대한 CONSOLE.LOG에서
, 나는 밖으로, 항상 나에게 sintax 오류가 있습니다 '$'의 가치를 얻을하는 방법을 알고하지 마십시오{ '$': { name: 'DATA_1', type: 'xs:string', length:'2102'} }
를 얻을. 어떤 아이디어? 고맙습니다!
도움이 될 수 있습니다 시도? 어떤 종류의 구문 오류가 발생합니까? 더 많은 정보를 제공 할 수 있습니까? – shaochuancs