![](http://oshiete.xgoo.jp/images/v2/pc/qa/question_title.png?8acaa2e)
以前CreateObject("Scripting.FileSystemObject")を使用してファイルを読込む方法、一行ずつ書込む方法を教えていただいたのですが。
環境によってはウイルスチェックに引っかかってしまうようで、別な手段を取らなければならなくなりました。
読込み:
Set objFso = CreateObject("Scripting.FileSystemObject")
Set objTxtSt = objFso.OpenTextFile(strFilePass, 1)
strData = CStr(objTxtSt.ReadAll())
書込み:
Set objFso = CreateObject("Scripting.FileSystemObject")
Set objTxtSt = objFso.OpenTextFile(strFilePass, 2, False)
Call objTxtSt.WriteLine(strData)
現在の処理は以上です。
上記と同じ処理をCreateObjectを使用せずに作成するにはどのようにすればよろしいでしょうか。
No.2ベストアンサー
- 回答日時:
基本的な命令ならまずマニュアルで調べるのが妥当な方法だと思いますよ
VB付属のMSDNや Webの http://msdn.microsoft.com/ja-jp/library/default. …
などで ・・・
ファイルの削除なら『Kill』、存在の確認には『Dir』で出来ると思いますよ
この回答への補足
以下の補足です。
Open strPass For Output As #iFile
Close #iFile
ファイル作成はこの記述になるのでしょうか。
ファイルは作成されるのですが、ファイル作成→書込みと一連の流れを行うときのみ使用するものかと思っていたのですが。
Open strPass For Output As #iFile
Print #iFile, strData
Close #iFile
Kill、Dirとも使用できました有難うございます。
調べ方についてですが。
>VB付属のMSDN
諸事情で参照することができません。
>WebのMSDN
「VB6.0 ファイル作成」「ファイル操作」「ファイル削除」などで検索しても、CreateObjectは見つかるのですがそれ以外の手段を見つけられませんでした。(Kill、Dirも発見できません)
MSDNより「Visual Basic 6.0 と Visual Basic .NET とのフォルダやファイルの操作方法の違いについて」
.NET系は割と探しやすいのですが、6.0ですとどうもうまく検索できません。
因みに「VB6.0 Kill」では、質問は出てくるのですが関数の詳細は出てきませんでした。
あとはファイル作成を実現したいのですが、どのように調べればよいでしょうか。
No.3
- 回答日時:
GoogleやYahooなどの一般検索サイトの方がいいかもしれません
有名所では『VBレスキュー(花ちゃん)』http://hanatyan.sakura.ne.jp/index.html
などがあります
VB6用の入門書でもいいかもしれません
逆引き辞典 ってのも有効かもしれません
最低限 VB付属のMSDNは手元にあった方が効率いいですよ
Open ファイル名 for output as #ff
Close #ff
で 中身は何もないファイルが生成されます
VB6自体のサポートは終了してしまったはずですから Microsoftのサイトから無くなってしまっていても不思議ではないですね
Office(ExcelやWord)のVBAのヘルプが使えるならこちらを代用してみるのも手ですが ・・・
>有名所では『VBレスキュー(花ちゃん)』
http://hanatyan.sakura.ne.jp/vbhlp/reference.htm
お陰さまでVBのリファレンスを発見できました。
Dirやkillもありました。
MkDirのようにフォルダを作成する関数は存在しましたが、ファイルを作成する関数はないようですので
Open ファイル名 for output as #ff
で良いみたいですね。
>VB6自体のサポートは終了してしまったはずですから
どうりで出てこないわけですね。
有難うございました。
No.1
- 回答日時:
> 上記と同じ処理をCreateObjectを使用せずに作成するにはどのようにすればよろしいでしょうか。
VB標準のファイルIOステートメント(Open #, Input #, Print #, Close #等)かWinAPIですね。
' ファイル全体を読み込む(テキストモード)
Dim intFile As Integer
Dim strLineInput As String
Dim strFilePath As String
Dim strFileBuff As String
intFile = FreeFile()
strFilePath = "C:\hoge.txt"
Open strFilePath For Input As #intFile
While Not EOF(intFile)
Line Input #intFile, strLineInput
If strFileBuff <> "" Then strFileBuff = strFileBuff & vbCrLf
strFileBuff = strFileBuff & strLineInput
Wend
Close #intFile
Debug.Print strFileBuff
' ファイルに1行を書き加える
Dim intFile As Integer
Dim strFilePath As String
Dim strNewLine As String
intFile = FreeFile
strFilePath = "C:\hoge.txt"
strNewLine = CStr(Now)
Open strFilePath For Append As #intFile
Print #intFile, strNewLine
Close #intFile
WinAPIでのコードは省略。
上記のコードで実装できました、有難うございます。
図々しいですが、追加で質問させてください。
ファイル作成と削除、存在チェックに関してです。
作成:
Set objFso = CreateObject("Scripting.FileSystemObject")
Set objTxtSt = objFso.CreateTextFile(strpFilePass)
削除:
Set objFso = CreateObject("Scripting.FileSystemObject")
Call objFso.DeleteFile(strpFilePass, True)
存在チェック:
Set objFso = CreateObject("Scripting.FileSystemObject")
Exist = objFso.FileExists(strpFilePass)
上記に相当する関数は存在しますでしょうか。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Excel(エクセル) VBA フォルダ見える化のコードについて 2 2023/06/19 15:04
- Visual Basic(VBA) このVBAでExcelアプリケーションを作成は必要ですか? 3 2023/07/19 21:13
- Visual Basic(VBA) エクセルのマクロを使ってメールを送る方法について教えてください 2 2022/03/29 01:36
- Visual Basic(VBA) batからexeを実行し戻り値を受け取る バッチからEXEの結果を受け取りたいのですが、 下記のバッ 1 2023/07/04 15:13
- Visual Basic(VBA) VBAが止まります。 2 2022/09/02 14:02
- Visual Basic(VBA) EXCEL VBAにて動的にCheckBOXを複数作成し、同BOXにイベントを追加したい 1 2023/03/16 07:05
- MySQL SHOW CREATE TABLE posts;これって何ですか? 3 2022/08/28 22:57
- Visual Basic(VBA) 複数のcsvファイルをExcelに一括変換したい 2 2023/03/03 12:44
- Visual Basic(VBA) batからexeを実行し戻り値を受け取る EXEの実行内容の結果によって、戻り値を0か1かで返したい 1 2023/07/04 16:40
- Visual Basic(VBA) excel vbaでvlooupの変数がわかりません。 7 2022/05/30 09:35
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
HTMLテキストリンクでExcelファ...
-
0バイトのテキストファイル
-
【Excel VBA】取り込んだファイ...
-
ファイル作成日時と更新日時を...
-
Eclipseで検索ができなくなった
-
VBAで、JPG写真の撮影日時を読...
-
VB6.0 CreateObject以外のファ...
-
2GB以上のファイルを扱う方法
-
RPGでメッセージファイル利用
-
GetOpenFileName()について
-
vbaの構文の修正相談(xmlファ...
-
サイトマップにサブドメインを...
-
C# リッチテキストボックス...
-
VBS ファイルマージ処理
-
Microoffice word 2007
-
C#で文字列リソースを扱う
-
windows 環境でのファイル操作...
-
ファイル更新日取得
-
「Active X Inet」と「WinInet...
-
\\記号が入った数値の処理につ...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
【Excel VBA】取り込んだファイ...
-
0バイトのテキストファイル
-
VBAで、JPG写真の撮影日時を読...
-
HTMLテキストリンクでExcelファ...
-
Eclipseで検索ができなくなった
-
VB6.0のメモリリークについて
-
main関数のコマンドライン引数...
-
2GB以上のファイルを扱う方法
-
サイトマップにサブドメインを...
-
ファイル更新日取得
-
ファイル作成日時と更新日時を...
-
エディットボックスの内容をテ...
-
【VBA】印刷マクロのループ処理...
-
<input type="file" で初期値...
-
【VBA】複数CSVの特定範囲を1つ...
-
C++によるファイル送受信プログ...
-
GetOpenFileName()について
-
VB2008 iniファイルの全セクシ...
-
ファイル内容を比較する方法
-
IMEのモードを強制的に変えるには
おすすめ情報