如何使用JavaStax在结束标记之前创建新标记?

如何使用JavaStax在结束标记之前创建新标记?,java,xml,stax,Java,Xml,Stax,我有两个xml。我从第二个xml读取数据,并保存到第一个xml。我在LinkedHashMap中保存第二个xml的日期 while (xmlEventReader.hasNext()){ XMLEvent xmlEvent = xmlEventReader.nextEvent(); xmlEventWriter.add(xmlEvent); if (xmlEvent.isStartElement(

我有两个
xml
。我从第二个
xml
读取数据,并保存到第一个
xml
。我在
LinkedHashMap
中保存第二个
xml
的日期

 while (xmlEventReader.hasNext()){
                XMLEvent xmlEvent = xmlEventReader.nextEvent();
                xmlEventWriter.add(xmlEvent);

                if (xmlEvent.isStartElement()){
                    StartElement startElement = xmlEvent.asStartElement();
                    xmlPath.addLast(startElement.getName().getLocalPart());
                    currentPath = join(xmlPath);
                    XMLEvent xmlModEvent;

                                switch (currentPath){
                                    case "/scbm-extract/machineList/machine/resourceCode":
                                        resourceCodeForMachine = xmlEventReader.peek().asCharacters().getData();
                                        break;
                                    case "/scbm-extract/machineList/machine":
                                        if (attributeIdealSequences.containsKey(resourceCodeForMachine))
                                            createTextElement("applyIdealSequence", "yes", xmlEventWriter, xmlEventFactory);
                                        break;
我在第一个
xml
中有机器列表。这台机器具有id为
LinkedHashMap
中键的标记。仅当此机器id存在于
LinkedHashMap
中时,我想在end
标记之前添加新标记

 while (xmlEventReader.hasNext()){
                XMLEvent xmlEvent = xmlEventReader.nextEvent();
                xmlEventWriter.add(xmlEvent);

                if (xmlEvent.isStartElement()){
                    StartElement startElement = xmlEvent.asStartElement();
                    xmlPath.addLast(startElement.getName().getLocalPart());
                    currentPath = join(xmlPath);
                    XMLEvent xmlModEvent;

                                switch (currentPath){
                                    case "/scbm-extract/machineList/machine/resourceCode":
                                        resourceCodeForMachine = xmlEventReader.peek().asCharacters().getData();
                                        break;
                                    case "/scbm-extract/machineList/machine":
                                        if (attributeIdealSequences.containsKey(resourceCodeForMachine))
                                            createTextElement("applyIdealSequence", "yes", xmlEventWriter, xmlEventFactory);
                                        break;
我的代码创建了新标记,但此标记位于错误的位置和错误的机器(下一个标记,下一个机器)此标记位于打开后
我希望此标记位于结束标记之前
。我想在
之后添加新标记。
resourceCode
LinkedHashMap