当ブログに掲載しているサンプルは、すべて利用者の自己責任という形でお願いします。
ただし、明らかな不具合がある場合、ご連絡いただければ、訂正記事を出します。
また、こちらのサンプルは、別のサイト等への公開、転載は一切禁止しています。
どうしてもと言う場合は、筆者にあらかじめご連絡ください。
記事そのもののリンクについてはご自由に行っていただいてよいです。

テクてく Lotus 技術者 Slack に参加しよう!

2008年9月17日水曜日

Notes文書をXMLに変換する

今回から、新しくNotesとXMLの関係についても書いていきたい。
とは言っても、筆者自身XMLのことはほとんど分からないし、DXLなんて使ったこともないので、試行錯誤しながらのお届けになると思うので、温かく見守ってほしい。

とりあえず、今回はNotesDXLExporterクラスを使って、Notes文書をXML文書に変換してみる。
サンプルは、ビューで選択した文書をXMLに変換するものである。
ポイントはUTF-8形式で出力ファイルをオープンするところだ。
キャラセットを指定しないと、文書中に日本語文字があると、XML文書が開けないのだ。

Sub Initialize
    Dim session As New NotesSession
    Dim db As NotesDatabase
    Dim docs As NotesDocumentCollection
    Dim doc As NotesDocument
    
    Dim ndxl As NotesDXLExporter
    Dim stream As NotesStream
    Dim ret As String
    
    Dim fn As Integer
    
    Set db = session.CurrentDatabase
    Set docs = db.UnprocessedDocuments
    Set doc = docs.GetFirstDocument
    
    Set ndxl = session.CreateDXLExporter( doc )
    Set stream = session.CreateStream
    Call ndxl.SetOutput( stream )
    
    fn = Freefile()
    
    Open "c:\notesxml.xml" For Output As #fn Charset = "UTF-8"
    ret = ndxl.Export( doc )
    Print #fn, ret
    Close #fn
End Sub








Lotus Notes/Domino カスタマイズとセキュリティ強化 - 株式会社エフ

2 件のコメント:

わろ さんのコメント...

こんにちは。

先日、ホットスポット内のURLのリンク切れをプログラムでチェックしたいけど何か良い方法はないかと同僚から問い合わせを受けた時にここの記事を思い出しました。
取得したXMLデータの内容を検索することでお蔭様で、1万件近くもあった文書のチェックが簡単にできてものすごく喜んでもらえました。

旧い記事へのコメントで申し訳ありませんがお礼を言いたくてあえて投稿させていただきました。
ありがとうございました。

およよ さんのコメント...

わろさん、わざわざ、お礼ありがとうございます。

こんな情報でも、お役に立てて良かったです。
XMLに変換することで、色々な使い途ができるんですね。こちらも勉強になりました。

これからもよろしくお願いします。