-4
この文字列をxml形式に変換したいと思います。この文字列をJSONに変換するにはどうすればよいですか? (JavaScriptオブジェクトを使用して)(string-> JSON-> XML)
これまでは、この '文字列'を 'オブジェクト'に入れて 'JSON形式'に変換する必要があるようです。 (と思う)
私の文字列が
"oTest^A1^BB:a1bb,oTest^A2^BB:a1cc,oTest^A1^CC:a2bb,oTest^A2^CC:a2cc"
で、JSON形式は
{
"oTest": {
"A1": {
"BB": "a1bb",
"CC": "a1cc"
},
"A2": {
"BB": "a2bb",
"CC": "a2cc"
}
}
}
され、最終的に私は、このXML形式の文字列
<oTest>
<A1>
<BB>a1bb</BB>
<CC>a1cc</CC>
</A1>
<A2>
<BB>a2bb</BB>
<CC>a2cc</CC>
</A2>
</oTest>
をしたいです。
は(それがJSONに変換せずに、直接XMLに変換することは可能ですか?)
私は「オブジェクト」に私の文字列を入れてみましたし、重複した値の取得に失敗しました。
私はこの
function fn_str2obj2Json(sStr)
{
var objChild1 = {};
var objChild2 = {};
var objRtn = {};
var sStr = "oTest^A1^BB:a1bb,oTest^A2^BB:a1cc,oTest^A1^CC:a2bb,oTest^A2^CC:a2cc";
var arrStr = sStr.split(',');
for (var i = 0; i < arrStr.length; i++) {
var arrSpe = arrStr[i].split('^');
var sLineName = arrSpe[0];
var sTankName = arrSpe[1];
var sItemName = arrSpe[2].split(':')[0];
var sValue = arrSpe[2].split(':')[1];
objChild2["" + sItemName + ""] = sValue;
objChild1["" + sTankName + ""] = objChild2;
objRtn["" + sLineName + ""] = objChild1;
//$.extend(objChild1, objChild2);
//objChild1 = {};
//objChild2 = {};
}
var sJsonVal = JSON.stringify(objRtn, null, 2);
//var sXmlVal = x2js.json2xml_str($.parseJSON(sJsonVal));
objRtn = {};
}
を試してみました。..
を5バージョンのECMAScriptしてください、あなたはすべてのコードを試してみましたか? – 31piy
いいえ、JSONはJavaScriptとXMLの間に必要なステップではありません。 – Ryan
...そのJSONに代表されるデータ構造を作成するのは良いスタートです。 – ikegami