string s = "<a/>";
System.Xml.XmlDocument doc = new System.Xml.XmlDocument();
doc.LoadXml(s);
System.IO.MemoryStream ms = new System.IO.MemoryStream();
System.Xml.XmlTextWriter xmlWriter = new System.Xml.XmlTextWriter(ms, Encoding.UTF8);
xmlWriter.Indentation = 4;
xmlWriter.Formatting = System.Xml.Formatting.Indented;
doc.WriteContentTo(xmlWriter);
xmlWriter.Close();
string result = Encoding.UTF8.GetString(ms.ToArray());
result 结果为<a /> 却不是<a/>
中间多了空格。
有没有解决的方法 我用C#不久。呵呵
对于自闭型tag的一种格式规范而已。
如果有特殊要求可以处理一下嘛
这个 有没有 代码 呵呵
现在多了个空格对你的程序有影响吗?这也许是内部的固定格式上的规范,具体的我也不清楚。还有你使用的是XmlDocument,而这个操作XML起来挺麻烦的,代码量会多一点,如果你的框架允许,建议你使用LINQ TO XML,这个比较简单操控XML节点,只要少量的代码就能完整对节点的增删改查功能,非常方便。这里有个网站有相关的例子,一看就会。http://www.dobug.net/showforum-11.html
// 去掉空标签的空格问题<a />
int iIndex_3 = strFormat.IndexOf(" />");
while(iIndex_3 != -1)
{
string strPrefix = strFormat.Substring(0, iIndex_3);
string strSuffix = strFormat.Substring(iIndex_3).Trim();
strFormat = strPrefix + strSuffix;
iIndex_3 = strFormat.IndexOf(" />");
}