输出到输出流有什么区别

时间:2018-11-02 11:07:49

标签: openedge progress-4gl

请帮助我了解Progress 4GL中的 Output To Output Stream 之间的区别,以及什么是 Stream ? ,进度文档页面没有太大帮助。

非常感谢您。

1 个答案:

答案 0 :(得分:5)

流就像文件句柄。您可以打开多个流,并根据需要对其进行写入。例如,您可能有不同的数据流和错误日志流。

输入和输出操作始终使用流。如果未明确创建并命名,则默认名称为未命名流。

define stream dataStrm.
define stream logStrm.

output stream dataStrm to value ( "mystuff.dat" ).
output stream logStrm to value ( "mystuff.log" ).

put stream logStrm now " start" skip.

put stream dataStrm "xyzzy" skip.

put stream logStrm now " end" skip.

output stream dataStrm close.
output stream logStrm close.

使用默认的,未命名的流很容易,但是如果处理复杂或频繁打开和关闭目标文件,或者如果它涉及多个文件,则很难跟踪正在发生的事情。如果在使用中已经出现冲突的流或输出目标出现错误,但是您没有定义任何流,则可能会从创建和使用命名流中受益。