在java中获取特定消息的段HL7

时间:2016-04-28 09:49:39

标签: java kettle hl7 hapi

  1. 我希望按段的名称获取特定的段hl7,例如, 我正在使用Pipeparser类,但我仍然不知道如何按结构名称(MSH,PID,OBX,...)获取每个段。

  2. 有时我有重复的段,如DG1或PV1或OBX(参见附图)我如何从Pentaho水壶的每个行段获取数据文件(我可以在水壶中使用java代码,如果有的话解决方案,请帮忙。)

  3. OBX|1|TX|PTH_SITE1^Site A|1|left||||||F|||||||
    OBX|2|TX|PTH_SPEC1^Specimen A||C-FNA^Fine Needle Aspiration||||||F|||||||
    

    DG1|1|I10C|G30.0|Alzheimer's disease with early onset|20160406|W|||||||||
    DG1|2|I10C|E87.70|Fluid overload, unspecified|20160406|W|||||||||
    

1 个答案:

答案 0 :(得分:1)

您应该使用HL7 Parser来正确/准确地解析任何HL7格式的消息。

在HAPI的帮助下,您可以将消息解析为Stream

File file = new File("hl7_messages.txt");
        is = new FileInputStream(file);
        is = new BufferedInputStream(is);
        Hl7InputStreamMessageStringIterator iter2 = new Hl7InputStreamMessageStringIterator(is); 

        while (iter2.hasNext()) {

            String next = iter2.next();

            // Do something with the message

        }

或者您可以将其读作字符串

sudo mongod --replSet "rs0" 

希望这能帮助你朝着正确的方向前进。