>  기사  >  웹 프론트엔드  >  xml 캡슐화 및 구문 분석(javascript 및 C#)_javascript 기술

xml 캡슐화 및 구문 분석(javascript 및 C#)_javascript 기술

WBOY
WBOY원래의
2016-05-16 18:49:071136검색
1.xml 파싱(javascript):
구체적인 코드는 다음과 같습니다. 파싱된 결과의 루트는 Dom 트리입니다.
코드 복사 코드는 다음과 같습니다.

if (window.ActiveXObject){
var doc =new ActiveXObject("Microsoft.XMLDOM");
doc.async="false";
doc.loadXML(strXml)
}else{
var parser=new DOMParser( );
var doc=parser.parseFromString(strXml,"text/xml");
}
var root = doc.documentElement;
2.xml 캡슐화( javascript):
(이 코드는 페이지의 테이블을 xml로 캡슐화합니다.)

var xmlDoc = new ActiveXObject("Microsoft.XMLDOM")
xmlDoc.loadXML(""); root = xmlDoc.documentElement;
for(var index=0;index{
var row = xmlDoc.createElement("Row"); for( var colIndex = 0;colIndex{
var currentCell = this.table.rows[index].cells[colIndex]
var cell = xmlDoc.createElement("Cell");
cell.setAttribute("Name",this.table.columns[colIndex].id)
cell.setAttribute("Value",currentCell.value );
row.appendChild(cell);
}
root.appendChild(row);
}


프런트 엔드 전송의 경우 xml을 백엔드로 전송하는 경우 jquery 구현을 참조하여 xml의 프런트엔드 및 백엔드 전송을 수행할 수 있습니다.

3.xml 캡슐화: (C#)

구체적인 방법은 다음과 같습니다.


코드 복사
코드는 다음과 같습니다. XmlDocument doc = new XmlDocument() doc.LoadXml("")
XmlElement root = doc.DocumentElement ;
root.SetAttribute("Name", name);//여기서 name은 xml
foreach(ListResult의 ListObject 객체)에 Name 속성을 할당합니다//여기서 listResult는 구성된 목록 테이블입니다. listObject 객체 중, 여기서 object는 ListObject 유형인 listResult의 요소입니다.
{
XmlElement item = doc.CreateElement("Item")
item.SetAttribute("Key", Object.key );/ /여기서 키와 값은 각각 Object의 속성 요소입니다.
item.SetAttribute("Value", Object.Value)
root.AppendChild(item);


최종 생성된 루트는 xml

4.xml 구문 분석(c#)


코드 복사
코드는 다음과 같습니다. XmlDocument doc = new XmlDocument(); try {
doc.Load(Request.InputStream);//Load the 여기에서 xml 요청 Stream
}
catch(예외 e)
{}
XmlNodeList rowList;
rowList = doc.DocumentElement.SelectNodes("Row")
List voList = new List(rowList.Count);//목록을 초기화하고 목록의 요소를 ObjectVO 객체로 변경
foreach(rowList의 XmlNode 행)
{
ObjectVO VO = new ObjectVO ();
VO.VOElement1 = Convert.ToInt32((row.SelectSingleNode("Cell[@Name='VOElement1']") as XmlElement).GetAttribute("Value"));//vo의 VOElement1 요소 int
VO.VOElement2 = (row.SelectSingleNode("Cell[@Name='VOElement2']") as XmlElement).GetAttribute("Value").ToString();//또는 셀 요소를 가져옵니다. 이름이 VOElement2인 xml에서 값 속성의 값
VO.VOElement3 = (row.SelectSingleNode("Cell[@Name='VOElement3']") as XmlElement).GetAttribute("Value").ToString() ;
voList.Add(VO)
}
voList 반환

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.