第十五章 控制值的转换 - 控制导入流属性的行结尾

文章目录

  • [第十五章 控制值的转换 - 控制导入流属性的行结尾](#第十五章 控制值的转换 - 控制导入流属性的行结尾)
  • 指定默认日期/时间值
  • [将非打印字符映射到` XML`](#将非打印字符映射到 XML)

第十五章 控制值的转换 - 控制导入流属性的行结尾

对于作为字符流的每个属性,可以在从 XML 导入时控制流中的行结束符。为此,可以设置 XMLSTREAMMODE 属性参数,该参数可以具有以下值之一(不区分大小写):

  • 如果 XMLSTREAMMODE 等于"block"(默认值),则规范化 XML 数据将原封不动地复制到流中。流的 LineTerminator 属性设置为 $CHAR(10),这使得导入与任何传统换行序列($CHAR(10)$CHAR(13)$CHAR(13,10))兼容。
  • 如果 XMLSTREAMMODE 等于"line",则 XML 数据将被分成由流的 LineTerminator 属性给定的字符分隔的行; %Library.AbstractStream

例如,假设我们有以下数据:

xml 复制代码
...
<Stream1>
<![CDATA[this is a line
this is another line
this is another line
]]>
</Stream1>
...

我们将此数据导入到具有类型为 %Stream.GlobalCharacterStream1 属性的对象中。默认情况下,XMLSTREAMMODE 属性是"块"。当我们导入数据后,该属性将包含以下数据:

xml 复制代码
this is a line
              this is another line
                                  this is another line

如果我们为此属性设置 XMLSTREAMMODE 等于"line",并重新导入数据,则该属性将包含以下数据:

xml 复制代码
this is a line
this is another line
this is another line

在这种情况下,行结束符由流类的 LineTerminator 属性确定。对于 %Stream.GlobalCharacter,此属性等于 $char(13,10)

指定默认日期/时间值

对于%PosixTime%TimeStamp%DateTime 数据类型类,XMLDEFAULTVALUE 参数指定在日期未通过 $zdatetimeh 有效性检查时要使用的值。默认情况下,在这种情况下,将使用空字符串,这会在通过 XMLImport() 导入数据时导致错误。为该类指定一个有效值。

例如,对的 %TimeStamp%DateTime,请以 YYYY-MM-DD HH:MM:SS.nnnnnnnnn 格式指定日期,从 1841 年之后的任意年份开始。例如:1841-01 -1 00:00:00

将非打印字符映射到 XML

XML 不允许非打印字符,特别是低于 ASCII 32 的字符(回车符、换行符和制表符除外)。

如果需要将某个属性映射到 XML,并且该属性包含任何这些非打印字符,则该属性的类型必须是 %Binary或的 %xsd.base64Binary 类型(这是等效的)。导出到 XML 时,该值会自动转换为 Base-64 编码(或导入时会自动从 Base-64 编码转换)。

相关推荐
缘于自然82 天前
高通modem如何确认device_config.xml的使用路径
xml·modem·mbn·mcfg
丑八怪大丑7 天前
XML_Tomcat_HTTP
xml·http·tomcat
largecode7 天前
企业名称能在来电显示吗?号码显示公司名服务打通多终端展示
android·xml·ios·iphone·xcode·webview·phonegap
只可远观9 天前
Android XML命令式和Jetpack Compose声明式UI
android·xml
鹏晨互联9 天前
《深入理解 Compose 中的 matchParentSize 与 fillMaxSize —— 从 XML 到 Compose 的对比解析》
xml
小短腿的代码世界10 天前
Qt SVG渲染管线全解析:从XML解析到像素绘制的完整架构设计与性能优化实战
xml·qt·性能优化
HMS工业网络10 天前
技术干货:EtherCAT设备ESI(XML)文件中的CompleteAccess关键字有什么作用
xml·运维·服务器
鹏晨互联11 天前
【Compose vs XML:边框内外间距的实现对比】
android·xml
鹏晨互联13 天前
Jetpack Compose vs XML:fillMaxSize、fillMaxHeight、fillMaxWidth 全面对比
android·xml