使用 Java 从 Lotus Notes 文档获取 .txt 文件
Get .txt file from Lotus Notes document using Java
我使用 java 代码创建了注释文档,然后如下创建富文本字段
doc = db.createDocument();
doc.replaceItemValue("FROMMAIL", "sender@gmail.com");
doc.replaceItemValue("SENDTO", "receiver@gmial.com");
doc.replaceItemValue("SUBJECT", "NotesSlrWriter");
DateTime s2 = sess.createDateTime(new Date());
System.out.println("Setting date to: "
+ s2.toJavaDate().toLocaleString());
doc.replaceItemValue("POSTEDDATE", s2);
RichTextItem t = doc.createRichTextItem("Attachements");
t.appendText("Here is the Attachment");
t.addNewLine(2);
t.embedObject(EmbeddedObject.EMBED_ATTACHMENT, null,
"c:\test\test.txt", "testtxt");
doc.save();
所以我知道使用 doc.getItemValue(arg0) 值我可以在我的 java 代码中获取其他字段的值。
但我不知道如何将 Notes 文档的附件字段中的 test.txt 放入我的 java class
t.getEmbeddedObject("testtext")
会给你一个 EmbeddedObject
。
EmbeddedObject
class 的文档是 here。
如果您不知道文件名,您可以遍历 RichTextItem 中的所有附件。
下面是扫描 1 个 richtextitem 并导出文件夹中所有文件的示例。
RichTextItem body = doc.getFirstItem("Attachements");
Vector v = body.getEmbeddedObjects();
Enumeration e = v.elements();
while (e.hasMoreElements()) {
EmbeddedObject eo = (EmbeddedObject)e.nextElement();
if (eo.getType() == EmbeddedObject.EMBED_ATTACHMENT) {
System.out.println("\t" + eo.getName());
eo.extractFile("c:\extracts\" + eo.getSource());
eo.remove();
}
}
还有另一种解决方案,可能对您有所帮助:
EmbeddedObject eo = doc.getAttachment("testtxt");
System.out.println(eo.getName());
eo.extractFile("c:\extracts\" + eo.getSource());
我使用 java 代码创建了注释文档,然后如下创建富文本字段
doc = db.createDocument();
doc.replaceItemValue("FROMMAIL", "sender@gmail.com");
doc.replaceItemValue("SENDTO", "receiver@gmial.com");
doc.replaceItemValue("SUBJECT", "NotesSlrWriter");
DateTime s2 = sess.createDateTime(new Date());
System.out.println("Setting date to: "
+ s2.toJavaDate().toLocaleString());
doc.replaceItemValue("POSTEDDATE", s2);
RichTextItem t = doc.createRichTextItem("Attachements");
t.appendText("Here is the Attachment");
t.addNewLine(2);
t.embedObject(EmbeddedObject.EMBED_ATTACHMENT, null,
"c:\test\test.txt", "testtxt");
doc.save();
所以我知道使用 doc.getItemValue(arg0) 值我可以在我的 java 代码中获取其他字段的值。
但我不知道如何将 Notes 文档的附件字段中的 test.txt 放入我的 java class
t.getEmbeddedObject("testtext")
会给你一个 EmbeddedObject
。
EmbeddedObject
class 的文档是 here。
如果您不知道文件名,您可以遍历 RichTextItem 中的所有附件。
下面是扫描 1 个 richtextitem 并导出文件夹中所有文件的示例。
RichTextItem body = doc.getFirstItem("Attachements");
Vector v = body.getEmbeddedObjects();
Enumeration e = v.elements();
while (e.hasMoreElements()) {
EmbeddedObject eo = (EmbeddedObject)e.nextElement();
if (eo.getType() == EmbeddedObject.EMBED_ATTACHMENT) {
System.out.println("\t" + eo.getName());
eo.extractFile("c:\extracts\" + eo.getSource());
eo.remove();
}
}
还有另一种解决方案,可能对您有所帮助:
EmbeddedObject eo = doc.getAttachment("testtxt");
System.out.println(eo.getName());
eo.extractFile("c:\extracts\" + eo.getSource());