(转载)将一段符合XML格式规范字符串插入已有XML文档当中

想我们已经存在一个XML文档,结构如下:

< xmlversion="1.0"encoding="utf-8">
< employees>
< employeeclass>
< firstname>symbol< /firstname>
< lastname>sn< /lastname>
< /employeeclass>
< /employees>

现在我们想就向现有的文档中插入一个已经序列化好的XML字符串:

转自:http://blog.163.com/[email protected]/blog/static/111995207201010124055949/

< employeeclass>
< firstname>tom< /firstname>
< lastname>wang< /lastname>
< /employeeclass>

其实如果只是简单的上面一个节点,我们可以有很多方式可以插入进行,像采用XmlWriter,XmlNode新建一个节点进行插入等,但以上的数据只是参考,当然在现实中,我们可能涉及要插入大量的数据.
这实这个问题也很简单,一开始我们就可以想到,新建一个元素节点,然后指定其InnerXML为我们要插入的XML字符串内容就行了,不过这样存在一个问题,那就是新建的一个元素节点是必须命名的,这样导致的结果不是我们想要的.所以在这里我们需要引入有一新的对象XmlDocumentFragment,它表示一个"表示对树插入操作有用的轻量对象"(活动文档对象在没有插入文档之前他不属性文档),是一个独立存在于内存空间的一个document对象.在这里我们就要用到他和他的InnerXML属性.
我们先建立一个XmldocumentFragment对象,然后把其Innerxml属性指定为我们需要插入进已经存在XML文档的符合XML格式规范的XML字符串.
最后确定插入到目标文档的节点位置,把XmldocumentFragment对象插入到现有文档当中,完成操作.
下面是参考代码:

XmlDocument  doc=new  XmlDocument();
doc.Load(Server.MapPath("Employee.xml"));
XmlDocument  FragmentdocFrag=doc.CreateDocumentFragment();
docFrag.InnerXml="< employeeclass>< firstname>tom< /firstname>< lastname>wang< /lastname>< /employeeclass>";

XmlNode  objectNode=doc.SelectSingleNode("employees");
objectNode.InsertAfter(docFrag,objectNode.LastChild);

doc.Save(Server.MapPath("Employee.xml"));

时间: 2024-12-18 15:23:06

(转载)将一段符合XML格式规范字符串插入已有XML文档当中的相关文章

C#读取XML格式的字符串

不要怪我水平低,其实真不高.....呵呵 在网上一搜读取xml文件的方法,挺多的.但我想的是直接读取XML格式的字符串,今天知道怎么弄了,现在分享下. 假如message就是我们想读取的字符串. 可以这么写: var doc = new System.Xml.XmlDocument(); //实例化XmlDocument,怎么用这个,网上去查查 doc.LoadXml(message);//加载数据 string code = doc.SelectSingleNode("ROOT/HEAD/CO

XStream解析xml格式的字符串的方法

ProcessStatusUploadRootList processStatusUploadRootList = null; try { XStream xStream = new XStream(); xStream.alias("Root", ProcessStatusUploadRootList.class); xStream.alias("Header", ProcessStatusUploadHeader.class); xStream.alias(&q

读取xml格式的字符串和上下文中的xml数据

1.读取xml格式的字符串 假设有一段下面的xml格式的字符串: <xml>     <return_code><![CDATA[SUCCESS]]></return_code>     <return_msg><![CDATA[OK]]></return_msg> </xml> 定义类ClientResponseHandler.cs public class ClientResponseHandler { p

java中使用XStream实现将对象转为xml格式字符串或者将xml格式的字符串转换为对象==

我们经常会有需求,比如调用别人的接口,别人会返回给你json或者xml格式的数据,然后我们要转换为相应的对象供我们自己使用: 也有的时候是别人的调我们的接口,让我们提供xml格式的数据或者json格式的数据,json的话这里都不说了,很好处理,甚至springMvc本身就很容易支持. 下面只介绍xml和对象彼此转换 首先我们需要引入的jar包:xstream-1.4.8.jar 下面直接贴代码,代码是在springMvc环境下写的 @Controller public class Navigat

soapui如何发送xml格式的字符串

一个服务需要的xml格式的字符串参数,用soapUI传递参数时要这样写: <![CDATA[<?xml version="1.0" encoding="UTF-8"?><root><params><a>lalala</a><b>bababa</b></params></root>]]> 否则会报错:  Illegal processing inst

java解析Xml格式的字符串

最近在工作中,需要调别的接口,接口返回的是一个字符串,而且内容是xml格式的,结果在解析json的时候报错,最终修改了接口的返回方式,以Map返回, 才得以接收到这个xml的字符串,然后通过dom4j来解析这个xml字符串.xml格式如图: 解析代码如下: /** * dom4j解析Xml * @param xml */ public void getXmlAttribute(String xml) { Document doc = null; try { // 将字符串转为XML doc =

解析xml格式的字符串,存入map中

package Test; import java.io.StringReader;import java.util.HashMap;import java.util.List; import org.jdom.Document;import org.jdom.Element;import org.jdom.JDOMException;import org.jdom.input.SAXBuilder;import org.xml.sax.InputSource; public class dem

caj格式的文件如何转换成Word文档?

很多人可能都会很少用得到caj文件,当拿到这样一个caj文件的时候我们可能需要将caj文件转换成Word文档的形式,下面就让小编给大家简单介绍一下. 步骤一:我们可以通过在浏览器上搜索迅捷PDF在线转换器然后进入到在线网站的首页面中去: 步骤二:在首页面中我们可以找到文档转换中的caj转Word功能,找到之后即可进入: 步骤三:进入之后就可以进行转换模式和选择转换格式等一系列参数的设置: 步骤四:设置好之后就可以将caj格式的文件点击选择上传到界面中去,选择到界面中之后就可以点击打开: 步骤五:

将 XML 架构(XSD)附加到Word文档

附加到文档中的 XML 架构是为您的组织进行自定义而设计的.XML 架构通常由 IT 专业人员创建,他们的职责就是在 Word 中为您的组织构建专用的模板或解决方案. 可用于附加到文档的架构在架构库中列出. 向架构库中添加架构 若要向架构库中添加架构,请按照下列步骤操作: 1.在“开发工具”选项卡上的“XML”组中,单击“架构”. 注释:若要显示“开发工具”选项卡,请执行下列操作: 单击“Office 按钮”,然后单击“Word 选项”. 单击“常用”,然后在“使用 Word 时采用的首选项”下