此示例显示如何构建平面文件模式来解析混合的位置和定界数据。要创建平面文件模式,您必须首先分析平面文件数据以确定要添加到平面文件模式的字段和节点。在此示例中,您将为以下两行数据创建平面文件模式:
BuyRight Pharmacy;USACAMVI334;!389!22;34980;
Taylor Drugs;USANJWLB128;!778!23!523;5667;
使用自顶向下的方法来定义平面文件模式的记录和字段,如以下步骤中所示:
使用这些条件为 Order 节点的基本属性和定界符窗格指定以下值,如图 2 所示:
使用这些条件为 purchaseOrder 节点的“基本属性”和“定界符”窗格指定以下值,如中图 4 所示:
对于每个字段,将在处理 originCode 字符串时从当前字符位置来校准字段偏移量,而不是从 originCode 字符串的开头进行校准。在此示例中,处理了 countryCode,并且将 originString 的前三个字符分配给 countryCode。处理 stateCode 时,当前字符位置已位于字符位置 3,因此应将 stateCode 的字段偏移量与当前字符位置相加,以获取用于处理 stateCode 字符串的起始点,如图 6 所示:
使用这些条件为 items 节点的“基本属性”和“定界符”窗格指定以下值,如图 8 所示:
BuyRight Pharmacy;USACAMVI334;!389!22;34980;
Taylor Drugs;USANJWLB128;!778!23!523;5667;
<?xml version="1.0" encoding="UTF-8"?> <Order> <purchaseOrder> <storeName>BuyRight Pharmacy</storeName> <originCode> <countryCode>USA</countryCode> <stateCode>CA</stateCode <cityCode>MVI</cityCode> <storeCode>334</storeCode> </originCode> <items> <item>389</item> <item>22</item> </items> <orderId>34980</orderId> </purchaseOrder> <purchaseOrder> <storeName>Taylor Drugs</storeName> <originCode> <countryCode>USA</countryCode> <stateCode>NJ</stateCode> <cityCode>WLB</cityCode> <storeCode>128</storeCode> </originCode> <items> <item>778</item> <item>23</item> <item>523</item> </items> <orderId>5667</orderId> </purchaseOrder> </Order>