Stream オブジェクトを利用する
2018.03.30
Streamオブジェクトを利用する
Sub Streamオブジェクトを使用()
Dim mySrm As New ADODB.Stream
With mySrm
'ストリームを開く
.Open
'データの種類を指定
.Type = adTypeText
'文字セットを指定
.Charset = "shift_jis"
'書き出し内容を記述
.WriteText "[data.txt]", adWriteLine
.WriteText "ColNameHeader = True", adWriteLine
.WriteText "CharacterSet = ANSI", adWriteLine
.WriteText "Format = TabDelimited", adWriteLine
.WriteText "Col1=商品コード Short", adWriteLine
.WriteText "Col2=商品名 Text Width 20", adWriteLine
.WriteText "Col3=仕入先 Text Width 20", adWriteLine
.WriteText "Col4=単価 Currency", adWriteLine
.WriteText "Col5=最終発注日 DateTime", adWriteLine
'ストリームの内容をファイルとして保存
.SaveToFile ThisWorkbook.Path & "\txt\4-48schema_sample.txt", adSaveCreateOverWrite
.Close
End With
Set mySrm = Nothing
End Sub
ADOに用意されているStreamオブジェクトを使用すると、バイナリレベルでファイルやデータをら見書きすることができる。
Streamオブジェクトのプロパティ
| プロパティ |
説明 |
| Charset |
文字セットを指定 |
| EOS |
現在の位置がストリームの末尾にあるかどうかを判定 |
| LineSeparator |
テキストストリームの場合、行末尾の改行記号の取得/設定を行う |
| Mode |
データの変更権限を指定 |
| Position |
現在位置を取得/設定 |
| Size |
サイズを取得 |
| State |
対象になるオブジェクトが開いているか閉じているかを判定 |
| Type |
データの種類をStreamTypeEnum値で指定
| 定数 |
値 |
説明 |
| adTypeBinary |
1 |
バイナリ データを表します。 |
| adTypeText |
2 |
Charsetで指定された文字セットにあるテキストデータを表します。 既定値 |
|
Streamオブジェクトのメソッド
| メソッド |
説明 |
| Open |
Streamオブジェクトを開く |
| Close |
Streamオブジェクトを閉じる |
| Write |
バイナリデータを書き込む |
| WriteText |
テキストデータを書き込む |
| Read |
指定したバイト数のデータを読み込む |
| ReadText |
指定した文字数のデータを読み込む |
| LoadFromFile |
ファイルの内容を読み込むトリームの内容をファイルに保存する |
| SaveToFile |
ストリームの内容をファイルに保存する |
| SetEOS |
ストームの終わりの位置を設定する |
| SkipLine |
1行全体をスキップする |
| Cancel |
非同期メソッド呼び出しの内、保留中のものの実行をキャンセルする |
| CopyTo |
指定したバイト数、または文字数のデータを他のStreamオブジェクトにコピーする |
| Flush |
ADOバッハファに保持されているStreamの内容を、関連づけられた元になるオブジェクトに反映する |
| State |
Streamオブジェクトに関する情報を取得する |
実行結果 書き出されたファイル「4-48schema_sample.txt」
