C++ 如何删除删除特定属性后在XML文件中创建的空行

C++ 如何删除删除特定属性后在XML文件中创建的空行,c++,xml,xml-parsing,xerces,domparser,C++,Xml,Xml Parsing,Xerces,Domparser,例如,我有一个XML文档 <document> <attribute id = 1 /> <attribute id = 2 /> <attribute id = 3 /> <attribute id = 4 /> <attribute id = 5 /> <attribute id = 6 /> </document> 我正在使用DOM解析器在我

例如,我有一个XML文档

<document>
    <attribute id = 1 />
    <attribute id = 2 />
    <attribute id = 3 />
    <attribute id = 4 />
    <attribute id = 5 />
    <attribute id = 6 />
</document>

我正在使用DOM解析器在我的C++代码中解析XML文件。 我正在删除一个特定的属性,例如id=3

使用Xerces库中的API删除属性, 但是我在删除文件的地方得到了一个空行 属性

删除操作如下所示。我将从给定的文件中删除所需的属性并复制 将剩余内容添加到临时文件,但会创建一个空行

<document>
    <attribute id = 1 />
    <attribute id = 2 />

    <attribute id = 4 />
    <attribute id = 5 />
    <attribute id = 6 />
</document>

我需要如下输出,文件中不应该存在空白行 删除后

<document>
    <attribute id = 1 />
    <attribute id = 2 />
    <attribute id = 4 />
    <attribute id = 5 />
    <attribute id = 6 />
</document>

使用此方法实现所需的

private static void formatWSDL(Document doc, String path) {
    try {
        OutputFormat format = new OutputFormat(doc);
        format.setIndenting(true);
        XMLSerializer serializer = new XMLSerializer(new FileOutputStream(new File(path)), format);
        serializer.serialize(doc.getDocumentElement());
    } catch (IOException e) {
        e.printStackTrace();  //To change body of catch statement use File | Settings | File Templates.
    }
}

这可能就是你打印出来的方式。空白文件可能不存在于实际文档中。如何解析/打印XML?另外,我认为XML属性与XML元素的概念有点模糊。
实际上是一个XML元素。如何将文档转换为文档类型?