0
JavaのNotes文書の添付ファイルのファイル名を取得する最も簡単な方法は何ですか?Notes文書の添付ファイルのファイル名を取得する
私の場合、ドキュメントは常に最大1ファイルを持ち、Bodyというリッチテキストフィールドに格納されています。
JavaのNotes文書の添付ファイルのファイル名を取得する最も簡単な方法は何ですか?Notes文書の添付ファイルのファイル名を取得する
私の場合、ドキュメントは常に最大1ファイルを持ち、Bodyというリッチテキストフィールドに格納されています。
は独自のJavaクラスでは、それが動作するはずです、これを試してみてください:
import com.ibm.xsp.model.domino.DominoUtils;
@SuppressWarnings("unchecked")
public List<String> getAttachmentsNames(RichTextItem richTextItem) {
List<String> attachmentsNames = new ArrayList<String>();
try {
Vector v = richTextItem.getEmbeddedObjects();
Enumeration e = v.elements();
while (e.hasMoreElements()) {
EmbeddedObject eo = (EmbeddedObject) e.nextElement();
if (eo.getType() == EmbeddedObject.EMBED_ATTACHMENT) attachmentsNames.add(eo.getName());
}
} catch (NotesException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return attachmentsNames;
}
@SuppressWarnings("unchecked")
public List<String> getFileNames(Document document, String richTextFieldName) {
List<String> fileNames = new ArrayList<String>();
try {
if (document.hasEmbedded()) {
Vector<String> docFileNames = DominoUtils.getCurrentSession().evaluate("@AttachmentNames" , document);
RichTextItem rtitem = (RichTextItem) document.getFirstItem(richTextFieldName); // Body
for (int i = 0; i < docFileNames.size(); i++) {
if (!docFileNames.get(i).equals("") && getAttachmentsNames(rtitem).contains(docFileNames.get(i))) {
fileNames.add(fileNames.get(i));
}
}
}
} catch (NotesException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return fileNames;
}
はEmbeddedObjectクラスヘルプファイルの外観を持っているし、この上のgetName()を使用します。あなたが必要とするものを正確に行う例があります。 –