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 ......
新建一个专门用来创建验证码图片的页面ValidateCode.aspx
它的后台cs文件代码如下:
PageLoad
复制代码 代码如下:
private void Page_Load(object sender, System.EventArgs e)
{
string checkCode = CreateRandomCode(4);
Session["CheckCode"] = checkCode;
CreateImage(checkCode);
}
其中CreateRand ......
利用 Page.RegisterStartupScript("", "<script language='javascript'> results();</script>");
或者是 Page.RegisterClient ......
public static IList<News> GetAllNews()
{
XmlDocument xdoc = new XmlDocument();
xdoc.Load("你读取的地址:例如 ......
1:如何通过socket代理来访问服务端:
String proxyHost =
"192.168.204.212"
;
String proxyPort =
"1080"
;
//通知Java要通过代理进行连接。
正在装载数据……
System.get ......