Skip to content

Instantly share code, notes, and snippets.

@imzjy
Created December 7, 2016 03:19
Show Gist options
  • Select an option

  • Save imzjy/b61e4ade30c91adf22588ec96ac2cbbf to your computer and use it in GitHub Desktop.

Select an option

Save imzjy/b61e4ade30c91adf22588ec96ac2cbbf to your computer and use it in GitHub Desktop.
将XML空元素转换成完整格式, transform the empty XML element to it full end format.
/// <summary>
/// 将XML空元素转换成完整格式,比如 <Element /> => <Element></Element>
/// </summary>
/// <param name="srcFile">待转换XML文件地址</param>
/// <param name="destFile">转换后XML保存文件地址</param>
public static void TransformEmptyElements(string srcFile, string destFile)
{
var srcXML = File.ReadAllText(srcFile);
Regex reg = new Regex(@"<\w+\s/>");
ReFind:
if (reg.IsMatch(srcXML))
{
var m = reg.Match(srcXML);
var emptyTag = m.Groups[0].Value;
var elName = m.Groups[0].Value.TrimStart("<".ToCharArray()).TrimEnd(" />".ToCharArray());
var fullTag = string.Format("<{0}></{0}>", elName);
srcXML = srcXML.Replace(emptyTag, fullTag);
goto ReFind;
}
File.WriteAllText(destFile, srcXML);
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment