我有一个枚举,可存储许多像这样的
enum1("<?xml version='1.0'?><!DOCTYPE FOO><FOO><HEADER><MESSAGE-ID>1</MESSAGE-ID><MESSAGE-TYPE>RQ</MESSAGE-TYPE></HEADER>[...someXMLstructure...]</FOO>")
enum2("<?xml version='1.0'?><!DOCTYPE FOO><FOO><HEADER><MESSAGE-ID>1</MESSAGE-ID><MESSAGE-TYPE>Q</MESSAGE-TYPE></HEADER>[...someOTHERXMLstructure...]</FOO>")
通过myEnum.getTag()
我的应用程序将此字符串中表示的某些节点的用户输入存储为Map<String, String>
,key
的{{1}}为XML文档的map
,element
是value
。
基本上我想从枚举中复制XML并替换地图中找到的任何相应元素,然后通过某个第三方无关接口将此消息作为value
发送。例如,用户可以传入String
和MESSAGE-ID=3
,这样我们就会找到字符串的USER-ID=360
元素并替换它,然后在某个未知的通用位置找到MESSAGE-ID
并替换那。如果在XML中找不到USER-ID
,那么它就会被丢弃。
修改 如果有更好的方法来做到这一点,即将XML转换为某种数据结构并修改它然后转换回字符串,我很乐意听到它,但是我在搜索中一般都没有找到这么多。
感谢您的帮助