- ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:VBScriptでのファイル読込について)
VBScriptでのファイル読込について
このQ&Aのポイント
- VBScriptを使用してCSVファイル内のデータをキー項目(コード)ごとに分け、別のCSVファイルに出力する方法について詳しく教えてください。
- VBScriptでのファイル読込時の文字コードの指定方法や、CSVファイル内のデータのソート処理について教えてください。
- VBScriptを使ってCSVファイルを読み込む際に、文字コードの指定やデータのソート方法に関する情報を教えてください。
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
Scripting.FileSystemObjectではなく、ADODB.Streamを使うことでさまざまな文字コードのデータを読み込むことができます。 CSVファイルを"UnicodeBE"で作成(エディタの機能で選択)し、以下のコードを実行してみたところ、一応"連番,コード,フラグ,日付"と表示されました。 文字コードについては素人に毛が生えた程度の知識しかないので"UTF-16BE"と"UnicodeBE"が同じものなのかは分かっていません。勘違いしていたらごめんなさい。 ---- Set oSt = WScript.CreateObject("ADODB.Stream") oSt.Open oSt.Type = 2 'バイナリ oSt.Charset = "UTF-16BE" oSt.LoadFromFile("be.csv") oSt.LineSeparator = -1 'CRLF oSt.Position = 0 sLine = oSt.ReadText(-2) WScript.Echo sLine ---- あと、ソート機能は不要ではないのでしょうか。 読み込んだ行のキーが0001だったら0001のファイルに出力し、0002だったら0002のファイルに出力し・・・とやっていくだけではないかと思うのですが。
その他の回答 (1)
- kztk
- ベストアンサー率53% (59/110)
回答No.2
こんにちは。 ADODB.Streamに関しては、本家本元のこちらのサイトをどうぞ http://msdn.microsoft.com/ja-jp/library/cc364272.aspx
質問者
お礼
ご回答ありがとうございます。 CreateObjectって色々な型を指定できるんですね。 大変参考になりました。
お礼
ご回答ありがとうございます。 返信が遅れて申し訳ありません。 "UTF-16BE"と"UnicodeBE"は同じです。 ADODB.Streamを使ってのファイル入力は初めて知りました。 教えていただいたやり方でUnicodeBEファイルの入力もうまくいきました。 私が参考にしていたサイトや参考書には載っていませんでしたね…。 回答者さんはADODB.Streamについて どこかのサイトや参考書をご存知でしょうか? よろしかったら教えて頂きたいです。