1

我正在使用 Oracle SOA Suite B2B 组件来处理 EDIFACT 文件。我需要处理一个 +2Gb 文件,它不能一次全部处理。我需要将文件拆分为较小的文件,然后将它们全部处理。是否有任何 Java 应用程序可以帮助我解决这个拆分问题?..

或者如果我尝试开发它,较小的 EDIFACT 文件的格式应该如何才能处理它们?

谢谢,

4

1 回答 1

1

EDIFACT交换文件由段组成。每个段都以段分隔符结束。因此,编写一个小程序将文件拆分为两个或更多较小的部分会很容易。请注意,可以在第一段 ( UNA) 中选择段分隔符。

但是,这种拆分会影响EDIFACT文件的整体结构。需要对交换/消息结构有更深入的了解才能找到可行的拆分位置。

EDIFACT交汇处的整体结构如下

        Service String Advice     UNA  Optional
 +----- Interchange Header        UNB  Mandatory
 | +---   Functional Group Header   UNG  Conditional
 | | +-     Message Header            UNH  Mandatory
 | | |        User Data Segments             As required
 | | +-     Message Trailer           UNT  Mandatory
 | +---   Functional Group Trailer  UNE  Conditional
 +----- Interchange Trailer       UNZ  Mandatory

如果您的大文件包含许多消息(以段开头UNH和结尾UNT),您可以沿消息边界拆分并添加人工UNB/UNZ信封。

于 2014-02-22T23:39:43.413 回答