解析时删除XML空格和换行

时间:2019-05-05 03:37:35

标签: c# xml

我正在尝试将XML作为字符串获取,但是所有空格都出现在最终结果中,我尝试了Regex和很多答案,但是都没有成功。这是我的代码。

public class XMLManager
{
    private static XmlDocument xmlInfographic;
    private static TextAsset infographicXML;

    public XMLManager()
    {
        infographicXML = Resources.Load("XML/Infographic") as TextAsset;
        xmlInfographic = new XmlDocument();
        xmlInfographic.LoadXml(infographicXML.text);
    }

     public static string LoadInformation(int index)
     {
          return xmlInfographic.DocumentElement.SelectSingleNode("/Infographic/Info/Info" + index).InnerText;
     }
}

此处是XML文件:

<Infographic>

  <Info>
    <Info0>
      • Something_0.
      • Something_0.
      • Something_0.
      • Something_0.
      • Something_0.
    </Info0>

    <Info1>
      • Something_1.
      • Something_1.
      • Something_1.
   </Info1>

  </Info>

</Infographic>

当前输出如下:

\r\n
      • Someting_1.
      • Someting_1.
      • Someting_1.
\r\n

我需要的是

• Someting_1.
• Someting_1.
• Someting_1.

3 个答案:

答案 0 :(得分:0)

您可以用空字符替换新行和空格。

/user

答案 1 :(得分:0)

上面的答案是正确的,但是您可以用更简洁的方式写:

public static string LoadInformation(int index)
{
    return Cleanup(xmlInfographic.DocumentElement.SelectSingleNode("/Infographic/Info/Info" + index).InnerText).Replace("\r\n",string.Empty).Replace(" ", string.Empty);
}

答案 2 :(得分:0)

请放置trim()应该足够了。

返回xmlInfographic.DocumentElement.SelectSingleNode(“ / Infographic / Info / Info” +索引).InnerText;

应该是

返回xmlInfographic.DocumentElement.SelectSingleNode(“ / Infographic / Info / Info” +索引).InnerText.trim();