FSD 中的字段元素
Field(字段)元素设置了输入或输出数据内的单个字段。
<field name output='yes|no' field-sep valid-value default-value leading-chars trailing-chars output-if-empty='no' max-length='128' min-length='0' truncate='no' quoted='auto' </field>
属性
name
设置字段的名称。如果 output 属性设置为“yes”,则这个名称在输出过程中将作为 XML 标记名称,在输入过程中则与 XML 标记进行选择匹配。
output
设置字段是否包括在输出中。该属性的有效值是“yes”和“no”,其中“yes”值表示记录将导致输出内生成一个标记,而“no”表示字段纯属用来描述数据结构,可用来跳过数据。默认值是“yes”。
record-sep
为字段设置一个可选的字段分隔符串。可以是任意字符串值。也可使用以下特定值:
- “\r”回车字符
- “\n”换行字符
- “\t”Tab 字符
如果没有指定字段分隔符,则系统会使用
最大长度
属性来读取数据(这些数据有固定长度)。记录中的最后一个字段可以省略字段分隔符,在这种情况下如果有指定的话,系统会使用该字段的记录分隔符。valid-value
您可以使用此属性来设置字段必须具备的值。在读取平面数据时会使用该值,用来有效性检查数据,并作为选择元素的一部分来帮助模式匹配。在编写平面数据时,如果输出属性设置为“no”,则系统会将您为
valid-value
指定的固定值编写至平面数据内。leading-chars
指包含字符的字符串,当这个字符串在从平面文件中读出时会从值起始处被去除。当数据编写至平面文件且
trailing-chars
属性没有指定时,这些字符的第一字符将用作值的左垫,使其长度正确(由 min-length 属性决定)。trailing-chars
指包含字符的字符串,当这个字符串在从平面文件中读出时会从值末尾处被去除。当数据编写至平面文件内时,这些字符的第一字符将用作值的右垫,使其长度正确(由
min-length
属性决定)。output-if-empty
确定当内容为空时,字段是否会被取消。该属性的有效值是“yes”和“no”。默认为“no”。
max-length
设置数据的最大长度。该值用于确定必须读取多少数据。默认值是“128”。
min-length
设置数据的最小长度。用作有效性检查和选择元素的模式匹配,同时还可以在
leading-chars
或trailing-chars
属性已指定时用作筛选器。默认值是“0”。truncate
如果该选项设置为“yes”,写回至平面文件格式的数据将被截至指定
max-length
。默认值是“no”。quoted
该选项决定在数据前后是否必须安置引号。用来允许字段分隔字符出现在实际数据内(由于 FSD 处理器不在引用字符串内查找字段分隔符)。该属性可以设置为下列值:
-
“否”
数据不作为引用字符串进行处理,如:数据将会逐字写入和写出平面文件。
-
“是”
数据作为引用字符串进行处理。当从纯文本格式向 XML 转换时,系统会去除数据前后的引号,同时任何遗留的引号将转换为单个引号。
当从 XML 格式向平面格式转换时,数据会包含在引号内且系统会遗留所有现有的引号(即单个引号会转变为成双引号,因此 " 会变为 "" 等)。
-
“自动”
该选项仅适用于将符号分隔的平面文件数据转换为 XML 的情况。如果数据包含字段分隔符,该选项的处理将会假设 quoted 选项设置为“yes”。该值的默认设置是“auto”。
-
“否”