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

第五十五章 File 输入 输出 - 与非 InterSystems IRIS 软件的交互

第五十五章 File 输入 输出 - 与非 InterSystems IRIS 软件的交互

与非 InterSystems IRIS 软件的交互

Windows 系统上,在 IRIS 中打开顺序文件以进行 “WL” 写入访问通常会阻止非 IRIS 应用程序打开顺序文件进行写入访问。同样,非 IRIS 应用程序打开顺序文件进行写入访问通常会阻止 IRIS 进程并发 “WL” 写入访问。

但是,某些非 IRIS 应用程序,包括记事本和写字板应用程序,会打开一个文件,在共享模式下复制文件,然后立即关闭它。因此,IRIS 进程仍然可以以 “WL” 模式打开文件。当这些非 IRIS 应用程序之一尝试将其副本中的更改保存到原始文件,或尝试重新打开原始文件时,将发生错误。更严重的情况可能发生如下:如果这些非 IRIS 应用程序之一打开了一个文件,然后 IRIS 打开、修改和关闭文件,然后非 `` 应用程序保存对文件的更改,两个进程所做的更改都被保存,文件数据的完整性可能会受到损害。

UNIX 系统上,在 IRIS 中打开一个顺序文件以进行 “WL” 写访问通常不会影响非 IRIS 应用程序的行为。您必须使用锁来可靠地限制来自非 IRIS 应用程序的写入访问。

示例

以下示例打开文件 “LUDWIG.B“ID 文件。因为它没有指定 mode 参数,所以默认情况下,它以读取访问权限和 stream 模式打开文件:

  OPEN "LUDWIG.B"

以下示例将打开一个新文件 “LIST.FILE“,具有写入权限,采用流格式。请注意,如果只包含括号通常包含的第一个参数,则不需要括号。

  OPEN "LIST.FILE":"WNS"

以下示例在当前目录中打开一个文件 “CARDS”,该文件具有读取和写入访问权限,以及 80 个字符的固定长度记录。

  OPEN "CARDS":("FRW":80)

以下示例在目录 c:\usr\dir 中打开流格式文件 “STRNG”,其中包含非默认终止符

  OPEN "c:\usr\dir\STRNG":("S"::$CHAR(0)_$CHAR(255))
讨论 (0)1
登录或注册以继续