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

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

2009年1月13日火曜日

ファイルの書き出し2

出てきたネタの中に、ファイルの書き出しについての記述があったので、今回はそれを紹介しよう。
以前、ファイルの書き出しで紹介しているんじゃないの?という方もいるかもしれない。

今回との違いは、Print #ステートメントとWrite #の違いによるものです。
どちらもデータをシーケンシャルファイルに書き出すものですが、
Write #は、複数のデータを","(カンマ)で区切って書き出せるのです。
Print #の場合、指定したデータをそのまま出力するのです。

結果として、Write #の場合、データがそれぞれ""(ダブルクォーテーション)で囲まれて出力されます。
サンプルは、前回紹介したもののPrint #をWrite #にしただけです。
実際に実行してみて違いを比べてみてください。

------------------------------------------------------------------------
Sub Click(Source As Button)
Dim session As New NotesSession
Dim db As NotesDatabase
Dim docs As NotesDocumentCollection
Dim doc As NotesDocument
Dim fileNum As Integer
Dim i As Integer

Set db = session.CurrentDatabase
Set docs = db.AllDocuments

'ファイル番号を割り当てる
fileNum% = Freefile()

'出力用にファイルをオープンする
Open "c:\script.txt" For Output As #fileNum%

'全文書数分の繰り返し
For i = 1 To docs.Count
Set doc = docs.GetNthDocument( i )
'ファイルに出力する
Write #fileNum%, Cstr( i ) + "." + doc.Subject(0)
Next

'ファイルをクローズする
Close #fileNum%
End Sub


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

0 件のコメント: