如何在java中将NCPDP标准格式消息转换为xml格式

How to convert NCPDP standard format message to xml format in java?

本文关键字:格式 消息 转换 xml 标准 NCPDP java 中将      更新时间:2023-09-26

我试图找到,是否有任何可用的库将NCPDP格式消息转换为java中的XML格式?在th Connect工具中,有一个将NCPDP转换为XML的直接选项,使用以下行:

var serializationProperties = SerializerFactory.getDefaultSerializationProperties('NCPDP');
SerializerFactory.getSerializer('NCPDP', serializationProperties, null).toXML(ncpdpmessage);

和th Connect提供了这个功能,所以他们在后端使用了一些api或库来将NCPDP转换为XML。我想做同样的事情,但是在java中。

感谢您的帮助。

th Connect使用自己的NCPDP序列化器实现。您可以在'extensions' datattype -ncpdp文件夹下的datattype -ncpdp-shared.jar中找到它。

简而言之,NCPDPSerializer.toXml()代码执行以下操作:

NCPDPReader ncpdpReader = new NCPDPReader(serializationSegmentDelimiter, serializationGroupDelimiter, serializationFieldDelimiter);
StringWriter stringWriter = new StringWriter();
XMLPrettyPrinter serializer = new XMLPrettyPrinter(stringWriter);
ncpdpReader.setContentHandler(serializer);
ncpdpReader.parse(new InputSource(new StringReader(source)));
return stringWriter.toString();

所以如果你想使用相同的,你可能需要所有其他相关的欢笑库。由于NCPDPReader扩展了SAXParser,并且不依赖于任何其他欢笑包,您可以尝试在此基础上构建自己的库。(在开始之前,请检查版权和许可说明。)您也可以尝试查找其他NCPDP Java解析器,如JParser.