2

以下のコードを見るとわかるように、画像データを Lotus データベースから base64 文字列に変換できます。問題は、画像のファイル名を手動で入力することです (4 行目)。私のデータベースにはたくさんの画像があり、私の「btnbg.jpg」だけがそれを読み取ることができ、他の画像は読み取れません。データベース列内のすべての画像ファイル名をコードで読み取るにはどうすればよいですか。また、結果のbase64文字列をhtmlイメージタグに含めるにはどうすればよいですか。どうもありがとう、神のご加護を

var testView:NotesView = database.getView("uploadforms");
    var col:NotesDocumentCollection = testView.getAllDocumentsByKey("1");
    var testDoc:NotesDocument = col.getFirstDocument();
    var attachment:NotesEmbeddedObject = testDoc.getAttachment("btnbg.jpg");
    var input:java.io.InputStream = attachment.getInputStream();

    var base64Enc = new sun.misc.BASE64Encoder();
    var output = new java.io.ByteArrayOutputStream();
    base64Enc.encode( input, output );

    return output.toString();
4

1 に答える 1

1

「私のコードでデータベース列内のすべての画像ファイル名を読み取るにはどうすればよいですか?」

添付ファイル名を列に印刷する必要があります。たとえば、「@AttachmentNames」関数を使用します。列を正確にトラバースするには、「ViewNavigator」クラスを使用する必要があります

ドキュメントを操作する場合は、ドキュメントやRTアイテムの「EmbeddedObjects」メソッドなど、いくつかのメソッドを使用してドキュメントからすべての添付ファイルを取得します。

「結果のbase64文字列をHTML画像タグに含めるにはどうすればよいですか?」

あなたはcssの助けを借りてそれを行うことができます:background:url(data:image / jpeg; base64、.. ..

cssbase64で多くの画像を使用することはお勧めできません。

于 2012-12-20T12:37:38.523 に答える