将InputStream的内容写入RichTextItem并附加到Java中的Notes文档
我能够将文件附加到我作为InputStream
接收的多米诺骨牌文档的RichTextItem
。 以下是代码段:
attachDocument(InputStream is){ ..... File attFile = saveInputStr(is); Document attdoc = testdb.createDocument(); attDoc.replaceItemValue("Form", "formAttachment"); RichTextItem rti = (RichTextItem) attDoc.getFirstItem("attachment"); rti.embedObject(EmbeddedObject.EMBED_ATTACHMENT, "", attFile .getPath(), attFile .getName()); ..... }
这很好用。 但是如果我不想将文件写入磁盘怎么办,就像我将它保存到File
即上面代码片段中的attFile
。 有没有办法将InputStream
的内容写入文件(可能正在使用一些注释文档)并将其附加到保存到磁盘。
我实际上找到了我的问题的解决方案 也许对某人有帮助
attachDocument(InputStream is){ ..... //File attFile = saveInputStr(is); Document attdoc = testdb.createDocument(); attDoc.replaceItemValue("Form", "formAttachment"); //RichTextItem rti = (RichTextItem) attDoc.getFirstItem("attachment"); //rti.embedObject(EmbeddedObject.EMBED_ATTACHMENT, "", attFile .getPath(), attFile .getName()); attDoc.getFirstItem("attachment"); Stream stream = DominoUtils.getCurrentSession().createStream(); stream.write(IOUtils.toByteArray(is)); MIMEEntity me = attDoc.createMIMEEntity("attachment"); me.setContentFromBytes(stream, "application/pdf", MIMEEntity.ENC_IDENTITY_8BIT); is.close(); attdoc.save(); ..... }
通过JAVA API(或LotusScript,COM),除了embedObject方法之外,我没有看到使用任何东西添加附件到富文本项的方法。 不幸的是,embedObject方法只接受一个指向要导入的文件位置的字符串。 如果没有传递实际对象的方法,您似乎需要将文件放在磁盘上并将路径传递给该文件。
- 如何使用jtable标题在pdf上保存jtable
- 在JSP中迭代ArrayList
- 从独立于开源平台的Java代码替换Windows * .exe中的图标
- 比较命令行参数引用返回false,而String数组返回true
- Tomcat 8 getOpenSessions()没有为终点返回所有会话?
- Java – Collections.sort()性能
- java.lang.ClassNotFoundException:来自xerial的Sample.java程序中的org.sqlite.JDBC错误
- 尝试更新我的Intellij时出现OutOfMemory错误
- Spring,使用@Configuration和@Bean注释