字段属性

如果在模式布局选项卡中选择了某个字段,或在类型库选项卡中选择了某个字段类型,则窗格中将显示以下属性部分:
  • 基本属性
  • 填充和修剪
  • 定界符
  • 位置属性

基本属性

下表定义了字段的基本属性

属性 描述
名称 指定该字段的名称。
注意: 字段名称必须是有效节点名
类型 可选:指定用作字段基础的字段类型。类型列表仅在创建字段类型后才处于活动状态。
注意: 选择新类型可能会将字段的某些现有属性重置为新设置。
重置 将在本地为该字段设置的属性重置为所选类型的值。
类型 为字段指定以下一种数据类型:
  • string -  指定编码的字符串
  • boolean - truefalse
  • integer - 任何整数
  • numeric - 任何十进制数字
选择性出现 对于定界数据,该复选框指定字段及其定界符均可从数据中省略。由于位置数据没有定界符,因此仅会省略字段。如果字段可以为空,但定界符必须存在,那么认为该字段是必需字段,不应选中该复选框。
注意: 当指定字段的可选属性时,请小心不要创建含糊的平面文件模式语法。有关更多信息,请参阅指定可选字段和记录
最小重复次数 指定该字段的最小出现次数。
最大重复次数 控制这一个字段的重复次数。选择以下一个选项:
  • 无限制 - 指定该字段可以重复任意次数
  • 范围 - 指定该字段的最大重复次数。字段的实际出现次数可以小于或等于该数字。
注: 仅当父节点指定了重复定界符时,才允许多次出现。

填充和修剪

是否对数据进行修剪或填充取决于以下条件:
  • 读取平面文件活动中,当平面文件数据转换为 XML 数据时,在将平面文件字段的字符放置到对应 XML 字段中前,会对其修剪
  • 写入平面文件活动中,当 XML 数据转换为平面文件数据时,在将 XML 元素的数据放置到对应平面文件字段中前,会对其填充

下表定义了字段的填充和修剪属性:

属性 描述
填充/修剪字符 指定用于填充字段长度或修剪字段的单个字符。
在窗格的字符文本字段中,执行以下一种操作输入一个字符:
  • 键入该字符。
  • 键入 Unicode 值。例如,对空格字符输入 /u0020
  • 单击 [...],以浏览一个字符。 字符选择对话框即会打开,列出对于定界符有效的字符选项,在显示列中,将显示代表该字符的字符或助记符。 此外,还会显示该字符的对应十六进制值和 Unicode 代码点。选择一个字符,并单击确定。 如果所选字符没有图形符号,会为该字符显示助记符或 Unicode 值。有关所有这些字符的更多信息,请参阅以下站点中的 Basic Latin 和 Latin-1 Supplement 字符集:http://www.unicode.org/charts/
填充长度 指定在写入平面文件活动中,将 XML 数据转换为平面文件数据时,字段数据的最终长度。指定的填充字符会添加到字段数据,直到该长度为止。通常,填充的大小与字段相同。
注: 当在读取平面文件活动中,将平面文件数据修剪为 XML 数据时,不使用在此字段中使用的该值。
对齐 指定将字段的哪一端以何种方式进行填充或修剪:
  • 左对齐 - 当指定了左对齐选项时,发生的操作取决于字段被读取还是写入:
    • 读取平面文件活动 - 当读取字段时,将从字段末尾修剪掉指定的修剪字符。例如,如果修剪字符等于连字号字符,字段长度等于 10,并且平面文件输入字段等于 ---1234---。结果为以下 XML 元素:<element>---1234</element>
    • 写入平面文件活动 - 当写入字段时,填充将添加在字段数据后。例如,如果填充字符等于连字号字符,填充长度 等于 10,并且输入 XML 元素等于 <element>1234</element>,那么结果为以下平面文件字段:1234------
 
  • 右对齐 - 当指定了右对齐选项时,发生的操作取决于字段被读取还是写入:
    • 读取平面文件活动 - 当读取字段时,将从字段开头修剪掉填充字符。例如,如果修剪字符等于连字号字符,字段长度等于 10,并且平面文件输入字段等于 ---1234---。结果为以下 XML 元素:<element>1234---</element>
    • 写入平面文件活动 - 当写入字段时,填充将添加在字段数据前。例如,如果填充字符等于连字号字符,填充长度等于 10,并且输入 XML 元素等于<element>1234</element>,那么结果为以下平面文件字段:------1234

定界符

下表定义了字段的转义封装定界符。 仅当为父记录的结构属性选择了定界选项时,才会使用这些属性。

属性 描述
转义字符 指定用于对字段数据内的定界符进行转义的单个字符。在运行时期间,Integration Appliance 会将紧跟在该定界符后的字符作为字符而非定界符直接进行解析。
在窗格的字符文本字段中,执行以下一种操作输入一个字符:
  • 键入该字符。
  • 键入该字符的 Unicode 值。例如,对空格字符输入 /u0020
  • 单击 [...],以浏览一个字符。 字符选择对话框即会打开,列出对于定界符有效的字符选项,在显示列中,将显示代表该字符的字符或助记符。 此外,还会显示该字符的对应十六进制值和 Unicode 代码点。选择一个字符,并单击确定。 如果所选字符没有图形符号,会为该字符显示助记符或 Unicode 值。有关所有这些字符的更多信息,请参阅以下站点中的 Basic Latin 和 Latin-1 Supplement 字符集:http://www.unicode.org/charts/
 

例如,当没有定义转义字符且记录的定界符是冒号时,如何解析以下记录?

135:Caving: What You Really Need to Know:10

上面的记录将解析为以下 4 个字段:
  • 135
  • Caving
  • What You Really Need to Know
  • 10
如果不希望 Caving What You Really Need to Know 标题断开分成两个字段,可以指定一个反斜杠转义字符,并在冒号前加一个反斜杠字符,如以下记录所示:

135:Caving/: What You Really Need to Know:10

使冒号前带有转义字符后,当解析此平面文件记录时,即使该记录使用冒号作为定界符,标题也不会断开为两部分。

动态位置 指定从 1 开始的字符位置,其中转义字符定义在第一个记录中。转义字符在运行时使用在指定字符位置处找到的字符来确定。例如,当没有定义封装字符且记录的定界符是冒号时,如何解析以下记录?

135:Caving: What You Really Need to Know:10

上面的记录将解析为以下 4 个字段:
  • 135
  • Caving
  • What You Really Need to Know
  • 10
如果不希望 Caving What You Really Need to Know 标题断开在两个字段中,可以将动态位置指定为 11,并在冒号前加一个反斜杠字符,如以下记录所示:

135:Caving/: What You Really Need to Know:10

现在转义字符等于记录中的第 11 个字符:反斜杠字符。使转义字符等于反斜杠字符后,现在解析此平面文件记录时,即使该记录使用冒号作为定界符,Caving 后的冒号也不会将该字段断开为两部分。

写缺省值 指定将该字段作为平面文件数据写入时,要使用的转义字符。仅当在写入平面文件活动中,将 XML 数据转换为平面文件数据时,才使用写缺省值。当在读取平面文件活动中,将平面文件数据转换为 XML 数据时,不使用写缺省值
在窗格的写缺省值文本字段中,执行以下一种操作输入一个字符:
  • 键入该字符。
  • 键入该字符的 Unicode 值。例如,对空格字符输入 /u0020
  • 单击 [...],以浏览一个字符。 字符选择对话框即会打开,列出对于定界符有效的字符选项,在显示列中,将显示代表该字符的字符或助记符。 此外,还会显示该字符的对应十六进制值和 Unicode 代码点。选择一个字符,并单击确定。 如果所选字符没有图形符号,会为该字符显示助记符或 Unicode 值。有关所有这些字符的更多信息,请参阅以下站点中的 Basic Latin 和 Latin-1 Supplement 字符集:http://www.unicode.org/charts/

例如,您想要使用反斜杠对 <title>Caving: What You Really Needto Know</title> 中的冒号进行转义。将 XML 元素 转换为平面文件数据时,在写缺省值字段中指定一个反斜杠。该字段的运行时结果将为以下字符串:

Caving\: What You Need to Know

当 XML 元素转换为平面文件数据时,不使用在动态位置字段中指定的字符位置。

封装字符 指定用于封装字段中的数据的定界字符,原因是字段可能包含在父记录中用于对该字段定界的字符。
在窗格的字符文本字段中,执行以下一种操作输入一个字符:
  • 键入该字符。
  • 键入该字符的 Unicode 值。例如,对空格字符输入 /u0020
  • 单击 [...],以浏览一个字符。 字符选择对话框即会打开,列出对于定界符有效的字符选项,在显示列中,将显示代表该字符的字符或助记符。 此外,还会显示该字符的对应十六进制值和 Unicode 代码点。选择一个字符,并单击确定。 如果所选字符没有图形符号,会为该字符显示助记符或 Unicode 值。有关所有这些字符的更多信息,请参阅以下站点中的 Basic Latin 和 Latin-1 Supplement 字符集:http://www.unicode.org/charts/
 

例如,当没有定义封装字符且记录的定界符是冒号时,如何解析以下记录?

135:Caving: What You Really Need to Know:10

上面的记录将解析为以下 4 个字段
  • 135
  • Caving
  • What You Really Need to Know
  • 10
如果不希望 Caving What You Really Need to Know 标题断开在两个字段中,可以指定封装字符为双引号,并用双引号将书名引起来,如以下记录所示:

135:"Caving: What You Really Need to Know":10

将封装字符集设置为双引号后,现在解析此平面文件记录时,即使父记录使用冒号作为定界符,Caving 后的冒号也不会将该字段断开为两部分。Integration Appliance 会将两个封装定界符之间的所有字符作为字符而非定作为界符读取。

动态位置 指定从 1 开始的字符位置,其中定界符定义在第一个记录中。封装定界符在运行时使用在指定字符位置处找到的字符来确定

例如,当没有定义封装字符且记录的定界符是冒号时,如何解析以下记录?

135:Caving: What You Really Need to Know:10

上面的记录将解析为以下 4 个字段:
  • 135
  • Caving
  • What You Really Need to Know
  • 10
如果不希望 Caving What You Really Need to Know 标题断开在两个字段中,可以将动态位置指定为 5,并用双引号将书名引起来,如以下记录所示:

135:"Caving: What You Really Need to Know":10

封装字符等于记录中的第 5 个字符:双引号字符。 使封装字符等于双引号字符后,现在解析此平面文件记录时,即使该记录使用冒号作为定界符,Caving 后的冒号也不会将该字段断开为两部分。Integration Appliance 会将两个封装定界符之间的所有字符作为字符而非作为定界符读取。

写缺省值 指定将该字段作为平面文件数据写入时,要使用的封装字符。仅当在写入平面文件活动中,将 XML 数据转换为平面文件数据时,才使用写缺省值。当在读取平面文件活动中,将平面文件数据转换为 XML 数据时,不使用写缺省值
在窗格的写缺省值文本字段中,执行以下一种操作输入一个字符:
  • 键入该字符。
  • 键入该字符的 Unicode 值。例如,对空格字符输入 /u0020
  • 单击 [...],以浏览一个字符。 字符选择对话框即会打开,列出对于定界符有效的字符选项,在显示列中,将显示代表该字符的字符或助记符。 此外,还会显示该字符的对应十六进制值和 Unicode 代码点。选择一个字符,并单击确定。 如果所选字符没有图形符号,会为该字符显示助记符或 Unicode 值。有关所有这些字符的更多信息,请参阅以下站点中的 Basic Latin 和 Latin-1 Supplement 字符集:http://www.unicode.org/charts/
 

例如,您要在将 <title>Caving: What You Really Need to Know</title> XML 元素转换为平面文件数据时,使用引号封装在该 XML 元素中找到的数据,可在写缺省值字段中指定双引号。 该字段的运行时结果将为以下字符串:

Caving: What You Need to Know

当 XML 元素转换为平面文件数据时,不使用在动态位置字段中指定的字符位置。

位置属性

下表定义了字段的位置属性。 仅当为父记录的结构属性选择了定位选项时,这些属性才处于活动状态。

字段 描述
字段偏移量 指定从前一字段结束开始,到该字段开始为止,要跳过的字符数。
字段长度 指定该字段的数据的长度。