Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/367.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
XML字符串到JSON javascript_Javascript_Json - Fatal编程技术网

XML字符串到JSON javascript

XML字符串到JSON javascript,javascript,json,Javascript,Json,我有一个xml字符串,我想转换成JSON字符串 var txt = "<?xml version='1.0' encoding='UTF-8' ?> <result> <info> <id>1</id> <type>HL</type>

我有一个xml字符串,我想转换成JSON字符串

var txt = "<?xml version='1.0' encoding='UTF-8' ?>
                 <result>
                   <info>
                      <id>1</id>
                      <type>HL</type>
                      <ven>DEMOMA</ven>
                   </info>
                   <info>
                      <id>2</id>
                      <type>HL</type>
                      <ven>DEMOMB</ven>
                   </info>
               <result>";
我希望我的输出json字符串只使用Javascript

{"result":[{"id":"1","type":"HL","ven":"DEMOMA"},{"id":"2","type":"HL","ven":"DEMOMB"}]}
看看这个

这是一个非常小和有用的脚本。使用非常简单

包括src

好好享受吧!xmlToJSON被打包为一个简单的模块,所以像这样使用它

testString = '<xml><a>It Works!</a></xml>';   // get some xml (string or document/node)
result = xmlToJSON.parseString(testString);   // parse
testString='It Works!';//获取一些xml(字符串或文档/节点)
result=xmlToJSON.parseString(testString);//作语法分析

“result”是您的JSON对象。

我将尝试用使用
x2js.js
jquery
(不使用jquery)库的示例进行解释

从API获取XML数据并将该数据转换为JSON

使用jQuery

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title></title>
    <script type="text/javascript" src="https://code.jquery.com/jquery-2.2.3.js"></script>
    <script type="text/javascript" src="xml2json.js"></script>
</head>
<body>
    <script type="text/javascript">
    var x2js = new X2JS();
    $.ajax({
        url: 'http://ip-api.com/xml',
        dataType: 'XML',
        success: function(data) {
            var xmlText = data; // XML
            var jsonObj = x2js.xml2json(xmlText); // Convert XML to JSON
            console.log(jsonObj);
        }
    });
    </script>
</body>
</html>

var x2js=新的x2js();
$.ajax({
网址:'http://ip-api.com/xml',
数据类型:“XML”,
成功:功能(数据){
var xmlText=data;//XML
var jsonObj=x2js.xml2json(xmlText);//将XML转换为JSON
console.log(jsonObj);
}
});
没有jQuery

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title></title>
    <script type="text/javascript" src="xml2json.js"></script>
</head>
<body>
    <script type="text/javascript">
    function loadXMLDoc(dname) {
        if (window.XMLHttpRequest) {
            xhttp = new XMLHttpRequest();
        } else {
            xhttp = new ActiveXObject("Microsoft.XMLHTTP");
        }
        xhttp.open("GET", dname, false);
        xhttp.send();
        return xhttp.responseXML;
    }

    var xmlDoc = loadXMLDoc("http://ip-api.com/xml"); // XML
    var x2js = new X2JS();
    var jsonObj = x2js.xml2json(xmlDoc); // Convert XML to JSON
    console.log(jsonObj);
    </script>
</body>
</html>

函数loadXMLDoc(dname){
if(window.XMLHttpRequest){
xhttp=newXMLHttpRequest();
}否则{
xhttp=新的ActiveXObject(“Microsoft.XMLHTTP”);
}
xhttp.open(“GET”、dname、false);
xhttp.send();
返回xhttp.responseXML;
}
var xmlDoc=loadXMLDoc(“http://ip-api.com/xml"); // XML
var x2js=新的x2js();
var jsonObj=x2js.xml2json(xmlDoc);//将XML转换为JSON
console.log(jsonObj);
用你刚才提到的例子。将关闭的
修复为


var txt=“1 HL DEMOMA 2 HL DEMOMB”;
var x2js=新的x2js();
var jsonObj=x2js.xml_str2json(txt);
console.log(jsonObj);
看看这个

我是图书馆的维护者

<script type="text/javascript" src="path/xmltojson.js"></script>

var json = xmlToJson(`<?xml version="1.0" encoding="UTF-8" ?>
             <result>
               <info>
                  <id>1</id>
                  <type>HL</type>
                  <ven>DEMOMA</ven>
               </info>
               <info>
                  <id>2</id>
                  <type>HL</type>
                  <ven>DEMOMB</ven>
               </info>
           </result>`);

// {
//   "result": {
//     "info": [
//       {
//         "id": "1",
//         "type": "HL",
//         "ven": "DEMOMA"
//       },
//       {
//         "id": "2",
//         "type": "HL",
//         "ven": "DEMOMB"
//       }
//     ]
//   }
// }

var xml = jsonToXml("{}");

// <?xml version="1.0" encoding="UTF-8"?>
// <root></root>

var json=xmlToJson(`
1.
HL
德谟玛
2.
HL
脱模
`);
// {
//“结果”:{
//“信息”:[
//       {
//“id”:“1”,
//“类型”:“HL”,
//“ven”:“DEMOMA”
//       },
//       {
//“id”:“2”,
//“类型”:“HL”,
//“ven”:“DEMOMB”
//       }
//     ]
//   }
// }
var xml=jsonToXml(“{}”);
// 
// 

可能重复的我只能使用Javascript。没有java没有Jquery:(Jquery是JavaScription您的解析问题是您忘记了关闭
关闭标记中的
。试试看,为什么库被模糊化了?您知道模糊化和缩小不一样吗?使用此库。
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title></title>
    <script type="text/javascript" src="xml2json.js"></script>
</head>
<body>
    <script type="text/javascript">
        var txt = "<?xml version='1.0' encoding='UTF-8' ?> <result> <info> <id>1</id> <type>HL</type> <ven>DEMOMA</ven> </info> <info> <id>2</id> <type>HL</type> <ven>DEMOMB</ven> </info> </result>";
        var x2js = new X2JS();
        var jsonObj = x2js.xml_str2json(txt);
        console.log(jsonObj);
    </script>
</body>
</html>
<script type="text/javascript" src="path/xmltojson.js"></script>

var json = xmlToJson(`<?xml version="1.0" encoding="UTF-8" ?>
             <result>
               <info>
                  <id>1</id>
                  <type>HL</type>
                  <ven>DEMOMA</ven>
               </info>
               <info>
                  <id>2</id>
                  <type>HL</type>
                  <ven>DEMOMB</ven>
               </info>
           </result>`);

// {
//   "result": {
//     "info": [
//       {
//         "id": "1",
//         "type": "HL",
//         "ven": "DEMOMA"
//       },
//       {
//         "id": "2",
//         "type": "HL",
//         "ven": "DEMOMB"
//       }
//     ]
//   }
// }

var xml = jsonToXml("{}");

// <?xml version="1.0" encoding="UTF-8"?>
// <root></root>