天天躁日日躁狠狠躁AV麻豆-天天躁人人躁人人躁狂躁-天天澡夜夜澡人人澡-天天影视香色欲综合网-国产成人女人在线视频观看-国产成人女人视频在线观看

firefo xml 讀寫實現js代碼

一 讀xml文件到字符串
第一步:將xml文件,轉化為DOM結構
1
var xmlDoc = document.implementation.createDocument("", "test", null);
xmlDoc.load("d://develop//bookmarks.xml");
2
var req = new XMLHttpRequest();
req.open("GET", "chrome://passwdmaker/content/people.xml", false);
req.send(null);
var dom = req.responseXML;
dom就是DOM結構對象
第二步:將DOM結構轉化為xml字符串
var serializer = Components.classes["@mozilla.org/xmlextras/xmlserializer;1"].createInstance(Components.interfaces.nsIDOMSerializer);
var str = serializer.serializeToString(dom);
str就是xml內容的字符串
二 將xml字符串寫成xml文件
// str為xml字符串
var parser = new DOMParser();
var dom = parser.parseFromString(str, "text/xml");
var serializer = Components.classes["@mozilla.org/xmlextras/xmlserializer;1"].createInstance(Components.interfaces.nsIDOMSerializer);
var foStream = Components.classes["@mozilla.org/NETwork/file-output-stream;1"].createInstance(Components.interfaces.nsIFileOutputStream);
var file = Components.classes["@mozilla.org/file/local;1"].createInstance(Components.interfaces.nsILocalFile);
file.initWithPath("d://develop//myxmlfile.xml");// 保持的位置
foStream.init(file, 0x02 | 0x08 | 0x20, 0664, 0); // write, create, truncate
serializer.serializeToStream(dom.documentElement, foStream, ""); // rememeber, dom is the DOM tree
foStream.close();
附件:
1 創建DOM結構
// 生成document對象
var xmldoc = document.implementation.createDocument("","",null);
// 創建xml文件的頭
// <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
var head = xmldoc.createProcessingInstruction("xml","version=/"1.0/" encoding=/"UTF-8/" standalone=/"yes/"");
xmldoc.appendChild(head);
// 創建ROOT節點
var nodest = xmldoc.createElement("nodeset");
xmldoc.appendChild(nodest);
// 創建子節點
var elem1 = doc.createElement("name");
elem1.textContent = "張三";
nodest.appendChild(elem1);
var elem2 = doc.createElement("name");
elem2.textContent = "李四";
nodest.appendChild(elem2);
// 創建的結果如下
<?xml version="1.0" encoding="UTF-8" standalone="yes"?><nodeset><name>張三</name><name>李四</name></nodeset>
這樣生成的xmlDOM結構通過系列化轉化為xml字符串時不會自動縮進,但通過XML對象解析下就可以了。
var serializer = Components.classes["@mozilla.org/xmlextras/xmlserializer;1"].createInstance(Components.interfaces.nsIDOMSerializer);
// 解析DOMxml結構到xml字符串
// 要XML對象解析成功必須將xml頭去掉
// 去掉xml頭
var xmlDeclaration = /^</?xml version[^>]+?>/;
var str = new XML( serializer.serializeToString(xmldoc).replace(xmlDeclaration, '') ).toXMLString();
哈哈,現在的str就是能夠自動縮進的xml字符串了。不過要是你的xml要編碼成功還得在str前面加上xml頭,千萬別忘了啊。

JavaScript技術firefo xml 讀寫實現js代碼,轉載需保留來源!

鄭重聲明:本文版權歸原作者所有,轉載文章僅為傳播更多信息之目的,如作者信息標記有誤,請第一時間聯系我們修改或刪除,多謝。

主站蜘蛛池模板: 97在线免费观看视频 | 朝鲜黄色录像 | 久久人妻少妇嫩草AV無碼 | 伊人热人久久中文字幕 | 四虎免费影院 | 国产精品亚洲精品影院 | 三级黃60分钟 | 女人张开腿让男人添 | YELLOW高清视频免费观看 | 男人国产AV天堂WWW麻豆 | 达达兔欧美午夜国产亚洲 | 在线观看免费视频a | 天堂Av亚洲欧美日韩国产综合 | xxnx动漫| 久久成人国产精品一区二区 | 宝贝你骚死哥了好爽 | 一个吃奶两个添下面H | 日日碰狠狠添天天爽 | 国产69精品久久久久APP下载 | 大屁股妇女流出白浆 | 亚州精品视频 | 国产对白精品刺激一区二区 | 九色PORNY真实丨国产大胸 | 国产精品久人妻精品 | 肉蒲团从国内封禁到日本成经典 | 男人插曲视频大全免费网站 | 天天澡夜夜澡人人澡 | 国产av在线看的 | 在线看片韩国免费人成视频 | 免费无码一区二区三区蜜桃大 | 天堂无码人妻精品AV一区 | 欧美日韩无套内射另类 | 国产精品在线手机视频 | 羲义嫁密着中出交尾gvg794 | 色婷婷欧美在线播放内射 | 久久aa毛片免费播放嗯啊 | 久久久96| 人驴交f ee欧美 | 亚洲国产欧美另类 | 曰本熟妇乱妇色A片在线 | 视频一区视频二区ae86 |