跳至主要内容
Administrator Guide
上次更新时间 :2023-06-23
使用文本架构文件将文本转换为 XML

使用文本架构文件将文本转换为 XML

创建一个包含“textschema”
步骤的程序集。获取将构成文本架构基础的示例文本。
“textschema”
步骤让您能够使用文本架构将文本转换为 XML。要开发文本架构,您必须知道要转换的数据的结构。如果有一个包含代表性数据的小型示例文档,则可大大简化这个过程。本主题假设您有这样一个示例文档。
您可以使用“textschema”
步骤将 XML 转换为文本,或者转换带分隔符的文件,但在大多数情况下,分别使用“XTT”
步骤和“csv-to-xml”
步骤会更简单。
  1. 在“textschema”
    步骤的“Properties”
    视图中,单击“Create Text Schema File”
  2. 选择文本架构文件的父级文件夹并提供文件名。如果需要,指定目标命名空间 URI。
  3. Studio 打开文本模式编辑器,并在
    树状
    视图中显示新的文本模式。
  4. 将示例文本剪切并粘贴到文本架构编辑器右上方的区域中,将
    initial-text
    要从输入文件中去除终止换行符,请将此属性添加到根架构元素:
    ts:eofStrip="
"
  5. 开始描述示例文本。选择第一个字段,右键单击并选择“Create Field”
    如果您没有要转换的文本示例,但知道其结构,则可以直接编辑文本架构的“Source”
    视图。
  6. 在“Create Field Wizard”
    的“Identity”
    页面上,提供字段的基本描述。完成此任务时,请参考以下信息:
    选项 描述
    名称
    字段的名称。
    Occurrence
    选项包括:
    • Default
      :字段为必填字段,且仅出现一次。
    • Required
      :与默认选项相同。
    • Optional
      :字段为可选字段,且只能出现一次。
    • Multiple Optional
      :字段为可选字段,且可以出现多次。
    • Multiple Required
      :字段为必填字段,且可以出现多次。
    Start Tag
    一个正则表达式,其指定的文本会导致生成元素。请注意,与此表达式匹配的文本不是输出值的一部分。如果您希望在输出值中显示匹配的文本,请使用
    ts:format
    选项。
    结束标记
    一个正则表达式,其指定的文本用于标记元素的结束。请注意,与此表达式匹配的文本不是输出值的一部分。如果您希望在输出值中显示匹配的文本,请使用
    ts:format
    选项。
    截断
    指定是截断固定长度字段中的溢出数据,还是引发错误。默认值为
    true
    分隔符
    一个正则表达式,其指定的字符用于分隔重复字段。仅当您选择“Multiple Optional”
    或“Multiple Required”
    出现次数选项后,此选项才会启用。
    Omit
    指定在“text-to-XML”
    或“XML-to-text”
    转换的输出中是否忽略字段。默认为不忽略。
  7. 在“Create Field Wizard”
    的“Delimit”
    页面上,描述示例文本中用于表示一个字段的字符数:
    选项 描述
    格式
    一个正则表达式,用于标识字段的有效文本模式。此表达式可用于替换“Start Tag”
    和“End Tag”
    ,以确保在输出中显示所有匹配的文本。在处理多次出现的值时,您也可以使用此表达式,从而清楚知道序列何时结束。
    Fixed Length
    指定固定长度字段的长度。引号和转义字符包括在内。
    Quoted
    指示是否将字符串值视为带引号的字符串。选项包括:
    • Default
    • always
    • always-including-empty
    • optional
    • never
    Padding
    一个正则表达式,用于标识固定长度字段内的任何填充文本。
    Preferred Padding
    指定在“Padding”
    表达式可匹配多个可能的字符串时要使用的值。
    Align
    指定需要填充的固定长度字段的对齐方式。
  8. 在“Create Field Wizard”
    的“Interpret”
    页面上,描述示例文本中用于表示一个字段的字符数:
    选项 描述
    类型
    字段的数据类型。
    默认值
    字段的默认值。
    Date Format
    指定日期或日期时间模式。支持 Java 允许的任何模式
    SimpleDateFormat
    日期语言
    指定在解释日期时使用的日期语言。确保当日期格式使用月份名称时,名称以相应的语言处理。默认值为
    EN
    两位数年份
    指定用于解释 2 位数年份日期的值。文本模式解析器会将早于该值的 2 位数年份日期解释为在当前世纪中。示例:如果您输入
    18
    ,则解析器会解释为
    14
    作为
    2014
    96
    作为
    1996
    数字格式
    指定数字模式。支持 Java 允许的任何模式
    DecimalFormat
    小数分隔符
    指定用于十进制数字的分隔符。
    Grouping Separator
    指定数字的千位分组分隔符。
  9. 对示例文本中的每个字段重复第 6 步到第 9 步,从而在
    树状
    视图中添加新元素。创建所有必填字段定义后,删除剩余的。
    Unparsed
    子元素。
  10. 要将您创建的所有元素封装到一个复杂类型中,请选择这些元素,右键单击它们,然后选择
    “元素封装”
    。然后,为包装器元素提供名称和出现次数值。
  11. 在包装器元素的
    “属性”
    视图中,从
    “结束标记”
    下拉列表中选择
    “/n”
  12. 默认架构根元素的名称为
    File
    。在元素
    “属性”
    视图的
    “架构”
    选项卡中,提供一个更有意义的名称。
  13. 在最高层级的
    “属性”
    视图中
    schema
    元素,则
    “根元素”
    属性的值为
    tns:File
    。替换
    File
    将其替换为您为根元素选择的有意义的名称。
  14. 如要从生成的输出中移除任何多余空格,请选择最高层级的
    “属性”
    视图。
    schema
    元素。从
    “填充
    位数”下拉列表中,选择
    “+”
    。保存架构。