如何解决C#为ERP LN ION生成的XML文件空节点自动换行问题

小密圈至今没有恢复,先把这篇文章分享到博客吧。

故事的背景是这样的:有个应用要跟ERP LN系统对接,使用了ION,需要在外部程序生成XML进行通讯,我用C# .NET写得,但是一开始一直报错。本以为是ION的设置问题,后来查下来是XML文件中的空节点的标签自动换行,包含了不可见的\n换行字符。

没办法,改程序,将原来的Save写法改为xmlWriter,并设置相关的参数如下,问题解决!

                    //doc.Save(filePath);//空白标签会产生多余换行符
                    XmlWriterSettings settings = new XmlWriterSettings();
                    settings.Indent = true;
                    settings.ConformanceLevel = ConformanceLevel.Auto;
                    settings.IndentChars = "\t";
                    settings.OmitXmlDeclaration = false;
                    using (XmlWriter xmlWriter = XmlWriter.Create(filePath, settings))
                    {
                        doc.Save(xmlWriter);
                    }

参数相关介绍请访问:https://docs.microsoft.com/zh-cn/dotnet/api/system.xml.xmlwritersettings.indent?view=netframework-4.7

Loading

发表回复

您的电子邮箱地址不会被公开。 必填项已用*标注

此站点使用Akismet来减少垃圾评论。了解我们如何处理您的评论数据