{{category ScrapCode,VBScript,nolink}}VBScriptでのファイル操作 !!!ファイル選択ダイアログの表示 !!UserAccounts.CommonDialog (WinXPのみ) ファイルを選択するためのダイアログボックスを表示する。WinXP==以降==(Win2000不可, ''Vistも不可らしい'')。複数のファイルの選択は不可能。 {{code Text,4, Set objDialog = WScript.CreateObject("UserAccounts.CommonDialog") objDialog.Filter = "Text Files|*.txt|All Files|*.*" ' フィルタの設定 objDialog.FilterIndex = 1 ' 初期表示のフィルタ番号 objDialog.InitialDir = "C:\" ' 初期表示のフォルダの指定 intResult = objDialog.ShowOpen ' ダイアログ表示 If intResult = 0 Then ' キャンセルを押下(intResult = 0)の場合 Wscript.Quit Else ' 開くを押下(intResult = -1)の場合 Wscript.Echo objDialog.FileName ' 選択したファイルのパスを表示 End If }} *[Hey, Scripting Guy!|http://www.microsoft.com/japan/technet/scriptcenter/resources/qanda/jan05/hey0128.mspx] (Microsoft TechNet) **http://www.microsoft.com/japan/technet/scriptcenter/resources/qanda/jan05/hey0128.mspx !!!ファイルの読み書き !!FSOでテキストファイル読み込み {{code Text,4, Set objFso = CreateObject("Scripting.FileSystemObject") Set objFile = objFso.OpenTextFile strFileName strText = objFile.ReadAll Set objFile = Nothing Set objFso = Nothing }} !!FSOでテキストファイル書き込み {{code Text,4, Set objFso = CreateObject("Scripting.FileSystemObject") Set objFile = objFso.OpenTextFile strFileName, False objFile.Write strText Set objFile = Nothing Set objFso = Nothing }} !!ADODB.Streamでファイル読み込み {{code Text,4, '' StreamTypeEnum Values Const adTypeBinary = 1 ' バイナリ データ Const adTypeText = 2 ' テキスト データ Set stream = CreateObject("ADODB.Stream") stream.Type = adTypeText stream.charset = "iso-8859-1" stream.Open stream.LoadFromFile strFileName strText = stream.ReadText stream.Close Set stream = Nothing }} !!ADODB.Streamでファイル書き込み {{code Text,4, '' StreamTypeEnum Values Const adTypeBinary = 1 ' バイナリ データ Const adTypeText = 2 ' テキスト データ '' SaveOptionsEnum Values Const adSaveCreateNotExist = 1 ' ファイルがないとき作成する Const adSaveCreateOverWrite = 2 ' ファイルがあるとき上書きする Set stream = CreateObject("ADODB.Stream") stream.Type = adTypeText stream.charset = "iso-8859-1" stream.Open stream.writeText strText stream.saveToFile strFileName, adSaveCreateOverWrite stream.Close Set stream = Nothing }}