文章
· 十二月 29, 2024 阅读大约需 2 分钟

第六十章 假脱机设备 - WRITE 命令

第六十章 假脱机设备 - WRITE 命令

WRITE 命令

要将一行写入 ^SPOOL 全局变量,请发出 WRITE 命令,以行终止符字符结尾。例如

   /* Writing to the ^SPOOL global */
   OPEN 2 
   USE 2 
     WRITE "First line of text",!
     WRITE "Second line of text",!
   CLOSE 2

   /* Displaying the ^SPOOL global */
   WRITE ^SPOOL(1,1),^SPOOL(1,2)

每行都以行终止符(感叹号)结尾,并存储在单独的全局节点中。

但是,在生成单个打印行时,可能需要使用多个 WRITE 命令;如果 WRITE 不包含行终止符,则下一个 WRITE 命令将附加到同一打印行。两者都写入同一个全局节点。此行保存在缓冲区中,在发出行终止字符或关闭后台处理程序设备之前,不会写入后台处理程序全局。

以下示例在发出 CLOSE 时写入一个全局节点:

   /* Writing to the ^SPOOL global */
   OPEN 2 
   USE 2 
     WRITE "First half of line "
     WRITE "Second half of line"
   CLOSE 2

   /* Displaying the ^SPOOL global */
   WRITE ^SPOOL(1,1)

行终止符字符通常是 (感叹号)WRITE 命令代码字符。这相当于回车符 (ASCII 13) 和换行符 (ASCII 10)。要终止一行,这两个控制字符都是必需的。仅发出回车符 (ASCII 13) 会导致回车符连接到 line 节点中,而不是启动新的 line 节点。在 Terminal 中,这种类型的行显示为回车前的文本被其后的文本覆盖。

以下示例在 ^SPOOL 文件中仅写入两个 line 节点:

   /* Writing to the ^SPOOL global */
   OPEN 2
   USE 2
     WRITE "AAAAAAAAAA",$CHAR(10),$CHAR(13)
     WRITE "BBBBBBBBBB",$CHAR(13)
     WRITE "XXXX",!
   CLOSE 2

   /* Displaying the ^SPOOL global */
   WRITE ^SPOOL(1,1),^SPOOL(1,2)
讨论 (0)1
登录或注册以继续