简介
在现代应用程序中,尤其是那些涉及大型数据、文档、日志或多媒体的应用程序,高效地处理大型或非结构化内容变得至关重要。 InterSystems IRIS 提供了一种强大、可扩缩的方式来使用流对象管理此类数据。
流对象可以让开发者在处理大型文本或二进制数据时不受字符串大小上限或内存效率低下的影响。 在本文中,我们将探讨如何使用 ObjectScript 在 IRIS 中创建、读取、写入、存储和操作流对象。
IRIS 中的流对象是什么?
InterSystems IRIS 在 %Stream 软件包下提供了内置流类,用于表示可以增量读取或写入的字符或字节序列。 这些流在处理以下内容时特别有用:
- 文本文档(日志、报告等)
- 二进制文件(图像、PDF)
- 大型 API 有效负载(文件上传/下载)
- 超出字符串上限 (~3.6MB) 的持久类属性
流类型
| 流类型 | 类 | 用例 |
|---|---|---|
| 字符流 | %Stream.GlobalCharacter、%Stream.FileCharacter |
大型文本数据 |
| 二进制流 | %Stream.GlobalBinary、%Stream.FileBinary |
图像、PDF、二进制文件 |
创建并写入流
下面介绍了如何创建和写入全局字符流:
Set stream = ##class(%Stream.GlobalCharacter).%New() Do stream.Write("This is line one.") Do stream.WriteLine("This is line two.")








(1).jpg)
.png)
.png)

