C# 生成XML时的特殊字符出现异常处理
生成端处理
将要写入的值的前后写上如:"<![CDATA[" + string+ "]]>";
XmlNode xnformchild = doc.CreateNode(XmlNodeType.Element, dc.ColumnName.ToUpper(), "");
try
{
xnformchild.InnerXml = drform[dc.ColumnName].ToString();
xnform.AppendChild(xnformchild);
}
catch
{
xnformchild.InnerXml = "<!--[CDATA[" + drform[dc.ColumnName].ToString() + "]]-->";
xnform.AppendChild(xnformchild);
}
接收端处理将生成端写入的:"<![CDATA["和 "]]>"分别替换即可
string startCdata = "<!--[CDATA[";
string endCdata = "]]-->";
if (fieldValue.StartsWith(startCdata) && (fieldValue.EndsWith(endCdata)))
{
fieldValue = fieldValue.Replace(startCdata, "");
fieldValue = fieldValue.Replace(endCdata, "");
}
简单吧,这样就可以解决xml存取特殊字符出现异常的问题,当然你在生成端只在存
有特殊字符的地方加上就行了,其它地方的不用加
相关文档:
//create a new Document
DocumentBuilderFactory dbf = DocumentBuilderFactory.newInstance();
DocumentBuilder db = dbf.newDocumentBuilder();
Document d = db.newDocument();
//add root Node
Element noteuser = d.createElement("note-users");
d.appendChil ......
原文链接:http://www.cnblogs.com/ding0910/archive/2007/07/12/815407.html
using System;
using System.Collections;
using System.ComponentModel;
using System.Data;
using System.Diagnostics;
using System.Web;
using System.Web.Services;
using BX.Interface;
......
今天公司要求用C#写个验证码组件,让asp可以调用,在网上找了一堆资料,终于给我给搞出来了,因为本人第一次写组件,也是第一次发表文章,所有可能说的不是很好,大家请见谅。
csdn上有这么篇文章,想学习写组件的可以去看看:http://blog.csdn.net/KimmKi ......
直接封装成一个类的,用起来还挺方便的
using System;
using System.Data;
using System.Configuration;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
using System.Text ......
public static IList<News> GetAllNews()
{
XmlDocument xdoc = new XmlDocument();
xdoc.Load("你读取的地址:例如 ......