Top > OOoBasic > Calc > CSV

CSV ファイルの取り扱い Edit

CSV ファイルのインポートおよびエクスポート時のフィルターオプション設定。

CSV エクスポート Edit

Calc から CSV ファイルをエクスポートする方法です。

エクスポートするために使用するのは,ドキュメントオブジェクトの storeToURL です。storeAsURL を使用すると名前を付けて保存と同じ様になり,保存先が変更されてしまいます。

storeToURL メソッドは

void storeToURL( string sURL, .bean.PropertyValue aArgs )
  • sURL: エクスポート先のファイル URL
  • aArgs: フィルター名などのオプション指定

オプションにはフィルター名およびフィルターのためのオプションを指定します。

CSV フィルターオプション Edit

CSV ファイルのためのフィルターは FilterName プロパティに "Text - txt - csv (StarCalc)" を指定します。

Dim aArgs(1) As New com.sun.star.beans.PropertyValue
  aArgs(0).Name = "FilterName"
  aArgs(0).Value = "Text - txt - csv (StarCalc)"
  
  aArgs(1).Name = "FilterOptions"
  aArgs(1).Value = "44,34,64,1,2/1/1/1/1"

FilterOptions プロパティには CSV フィルター設定を指定します。設定は5つの指定をコンマで区切って行います。フィールドにはそれぞれ,

  1. セルの区切り文字を ASCII コードで指定。コンマ: 44
  2. テキストを囲む文字を ASCII コードで指定。ダブルクォート: 34
  3. テキストの文字コード Unicode: 65535, UTF-8: 76, UTF-7: 75, EUC-JP: 69, Shift_JIS: 64, ISO-2022-JP: 72
  4. エクスポートし始める行
  5. セルのタイプ指定 1: 数値, 2: テキスト, 3: MM/DD/YY, 4: DD/MM/YY, 5: YY/MM/DD, 6, 7, 8: テキスト, 9: セルを無視, 10: US タイプの数値フォーマット です。各フィールドに複数の値を指定する際には,数値を "/" で区切ります。

利用可能な文字コード数値はソースコードのtextenc.h で確認できます。

CSV インポート Edit

CSV ファイルのインポートは loadComponentFromURL メソッドで行います。利用するフィルター設定は上記と同様です。

たとえば、コンマを区切りに、テキストの囲みをダブルクォート、エンコード UTF-8 を利用するときは次のような指定を行います。

Sub csv_import_1
  oDesktop = StarDesktop
  
  sFileURL = "file:///C:/usr/1.csv"
  
  Dim aArgs(1) As New com.sun.star.beans.PropertyValue
  aArgs(0).Name = "FilterName"
  aArgs(0).Value = "Text - txt - csv (StarCalc)"
  
  aArgs(1).Name = "FilterOptions"
  aArgs(1).Value = "44,34,76,1,2/1/1/1/1"
  
  
  oDesktop.loadComponentFromURL( _
      sFileURL, "_default", 0, aArgs )
End Sub

Reload   New Lower page making Edit Freeze Diff Upload Copy Rename   Front page List of pages Search Recent changes Backup   Help   RSS of recent changes