【问题标题】:ObjectScript file create from stream从流创建的 ObjectScript 文件
【发布时间】:2015-08-12 11:32:02
【问题描述】:

如何从存储在全局中的二进制流创建文件(例如 PDF 文件)?我已将流存储在全局缓存中,我需要使用 ObjectScript 创建并保存由流创建的文件。

谢谢:)

【问题讨论】:

    标签: intersystems-cache objectscript


    【解决方案1】:

    这并不容易。在Cache中创建pdf的官方方法只有一种,它是ZEN reports。使用 ZEN 报告,您不仅可以创建 pdf,还可以制作 html、xlsx。 ZEN Reports 使用 Apache FOP 生成它,任何其他方式也可以,但您只能自己完成。

    或者我误解了你的意思,你的意思是你的二进制流已经包含 PDF,你只是想把它保存到某个文件中。如果是这样,您只需将全局流复制到文件流,代码如下:

    set fs=##class(%Stream.FileBinary).%New()
    set fs.Filename="c:\temp.pdf"
    set tSC=fs.CopyFrom(yourStream)
    set tSC=fs.%Save()
    

    【讨论】:

    • 我在字符串变量中有流。我使用了您的代码并将 fs.CopyFrom(yourStream) 替换为 fs.Write(yourStream) 并且效果很好。我真的很感谢你。你又为我节省了很多时间:)
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2013-04-09
    • 2012-04-18
    • 1970-01-01
    • 1970-01-01
    • 2011-01-16
    • 2018-08-17
    • 1970-01-01
    相关资源
    最近更新 更多