碰到一个需求,从前端读取xml并在前端解析成string,显示到html中(不上传,客户需要看到上传的xml是否正确再上传,因此只能前端转换)
1.xml文件转XMLDocument
function createXml(str)
if(document.all)
var xmlDom=new ActiveXObject("Microsoft.XMLDOM")
xmlDom.loadXML(str)
return xmlDom
return new DOMParser().parseFromString(str, "text/xml")
如果在js端是读取文件,那就更方便了
var xmlDoc = new ActiveXObject("Msxml2.DOMDocument.3.0");
xmlDoc.async = false;
xmlDoc.load("文件路径");
2.xml dom转xml字符串
function xmlToString(xmlObj)
if(document.all) //IE浏览器
return xmlObj.xml;
else //其他浏览器
return (new XMLSerializer()).serializeToString(xmlObj);
3. 加载xml文件
function loadXML()
try //Internet Explorer
xmlDoc=new ActiveXObject("Microsoft.XMLDOM");
catch(e)
try //Firefox, Mozilla, Opera, etc.
xmlDoc=document.implementation.createDocument("","",null);
catch(e)
alert(e.message)}
xmlDoc.async=false;
xmlDoc.load("/example/xdom/books.xml");
document.write("xmlDoc is loaded, ready for use");
catch(e)
alert(e.message)
碰到一个需求,从前端读取xml并在前端解析成string,显示到html中(不上传,客户需要看到上传的xml是否正确再上传,因此只能前端转换)1.xml文件转XMLDocumentfunction createXml(str){ if(document.all) { var xmlDom=new ActiveXObject("Microsoft.XMLDOM") xmlDom.loadXML(str) return xmlDom ...
//支持IE浏览器
if(!window.DOMParser && window.ActiveXObject){
var xmlDomVersions = ['MSXML.2.DOMDocument.6.0','MSXML.2.DOMDocument.3.0','Microsoft.XMLDOM'];
for(var i=0;i<xmlDomVersions.length;i++){
今天使用FusionCharts遇到了一个问题,由于情况限制,我只可以使用javascript来完成Data.xml的准备,需要动态生成。 那么就需要手动创建一个XML对象,并且转换字符串。这样可以避免强行使用字符串拼接的方法。好了废话不多说了。直接看代码:function createXMLDOM() {
var xmlDOM;
if (win...
直接上代码,我就不废话了!xml.js类似于java中的工具类,通用类!xml.js文件/**
* xml工具
* xml对象和String字符串之间的转换
//convert string to xml object (将字符串转换成xml对象)
function string2XML(xmlString) {
// for IE(IE浏览器)
if (wi...
在java端将字符串转化为xml对象可以使用DocumentHelper.parseText(xmlReturn).getRootElement(); 在js中同样有方法可以将字符串转化为xml对象,可以使用如下函数 以下是引用片段: 代码如下: function createXml(str){ if(document.all){ var xmlDom=new ActiveXObject(“Microsoft.XMLDOM”) xmlDom.loadXML(str) return xmlDom } else return new DOMParser().parse
最近在开发项目时遇到了一个需求,从数据库查询出来的xml报文的字符串需要解析处参数来,在页面上支持修改,所以催生了利用JavaScript来实现解析XML文本的功能。
具体思路是现获取XML的DOM对象,然后再通过遍历和递归获取子元素的nodeValue,来拼接出JSON字符串。通过XML字符串来生成XML的DOM对象:/**
* 通过传入xml的内容字符串来解析xml
* @param xm
在ajax获取xml信息时,返回的数据类型是XMLDocument,在程序调试时经常要看此对象的内容。此时,可用如下代码获取XMLDocument的字符串形式,并进行显示。
function XMLtoString(elem){
var serialized;
注:判断是否是ie浏览器和非ie浏览器的方法有多种,在此只介绍用例中的方法:1、解析xml字符串,得到xml对象的方式:functioncreateXml(str){
if(document.all){//IE浏览器
varxmlDoc=newActiveXObject("Microsoft.XMLDOM");
xmlDoc.asyn...
你可以使用Java语言中的XML API来将XML转换为字符串,具体步骤如下:
1. 创建一个DocumentBuilderFactory对象,用于创建DocumentBuilder对象。
2. 使用DocumentBuilder对象的parse方法将XML文件解析成一个Document对象。
3. 创建一个TransformerFactory对象,用于创建Transformer对象。
4. 使用Transformer对象的transform方法将Document对象转换为字符串。
示例代码如下:
```java
import java.io.StringWriter;
import javax.xml.parsers.DocumentBuilder;
import javax.xml.parsers.DocumentBuilderFactory;
import javax.xml.transform.Transformer;
import javax.xml.transform.TransformerFactory;
import javax.xml.transform.dom.DOMSource;
import javax.xml.transform.stream.StreamResult;
import org.w3c.dom.Document;
public class XmlToString {
public static void main(String[] args) throws Exception {
// 1. 解析XML文件成Document对象
DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance();
DocumentBuilder builder = factory.newDocumentBuilder();
Document doc = builder.parse("filename.xml");
// 2. 将Document对象转换为字符串
TransformerFactory tfactory = TransformerFactory.newInstance();
Transformer transformer = tfactory.newTransformer();
StringWriter writer = new StringWriter();
transformer.transform(new DOMSource(doc), new StreamResult(writer));
String str = writer.getBuffer().toString();
System.out.println(str);
其中,filename.xml是要转换的XML文件的路径。转换后的字符串可以通过str变量获取。