首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >需要解析HL7消息

需要解析HL7消息
EN

Stack Overflow用户
提问于 2012-12-27 14:28:37
回答 2查看 15.7K关注 0票数 6

我需要解析HL7消息,首先验证消息,然后解析。

代码语言:javascript
复制
 XMLParser xmlParser = new DefaultXMLParser();

 //encode message in XML 
 String hl7MessageInXML = null;
 try {
        hl7MessageInXML = xmlParser.encode(message);
 } catch (HL7Exception e) {
    e.printStackTrace();
 }
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2012-12-27 16:06:02

示例代码:

代码语言:javascript
复制
import ca.uhn.hl7v2.parser.*;
import ca.uhn.hl7v2.model.Message;
import ca.uhn.hl7v2.model.v24.message.ACK;

public class ParserDemo {

    public static void main(String args[]) {
        //for demo purposes, we just declare a literal message string 
        String ackMessageString 
            = "MSH|^~\\&|foo|foo||foo|200108151718||ACK^A01^ACK|1|D|2.4|\rMSA|AA\r";

        //instantiate a PipeParser, which handles the "traditional encoding" 
        PipeParser pipeParser = new PipeParser();

        try {
            //parse the message string into a Message object 
            Message message = pipeParser.parse(ackMessageString);

            //if it is an ACK message (as we know it is),  cast it to an 
            // ACK object so that it is easier to work with, and change a value            
            if (message instanceof ACK) {
                ACK ack = (ACK) message;
                ack.getMSH().getProcessingID().getProcessingMode().setValue("P");
            }

            //instantiate an XML parser 
            XMLParser xmlParser = new DefaultXMLParser();

            //encode message in XML 
            String ackMessageInXML = xmlParser.encode(message);

            //print XML-encoded message to standard out
            System.out.println(ackMessageInXML);
        } catch (Exception e) {
            e.printStackTrace();
        }       
    }
}
票数 3
EN

Stack Overflow用户

发布于 2013-07-23 04:35:20

尝试使用HAPI Parser api (http://hl7api.sourceforge.net/)。您可以在这里找到一些解析HL7消息的示例:

http://ignaciosuay.com/how-to-use-hapi-terser-with-hl7/

http://ignaciosuay.com/how-to-set-repetitions-in-hl7-messages-using-hapi-terser/

希望能有所帮助

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/14050402

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档