- ベストアンサー
テキストファイル操作
VB6ですが、Aというフォルダに書き込まれた050416110311AAA.txt(050416110311は書き込まれた時間で違う)ファイルをBというフォルダのAAA.txtに追加書き込むやり方教えて頂きますか?
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
どの部分が判らないのでしょうか? 読み込むファイル名を知る方法でしょうか? ファイルを追加書きこみする方法でしょうか? 丸投げはいかがなものかと思います。 苦言はこのぐらいにして、 ファイルの検索には Dir を使います。 ファイルの追加書きこみは、ファイルオブジェクトを使う方法も有りますが、 私は昔ながらの、Open,Close,Input等を使います。 サンプルを示しますが、 変数宣言は省略しています。 記憶のみで書いたので、間違っているかもしれません。 インデントのために、スペースを全角にしています。 Private Sub Main SrcFolder = "A" SrcFile = "" SrcFile = Dir(SrcFolder) Do While SrcFile <> "" Call HogeHoge(SrcFile) SrcFile = Dir Loop End Sub Private Sub HogeHoge(FileName As String) SrcFolder = "A" DstFolder = "B" SrcFile = SrcFolder & "\" & FileName DstFile = DstFolder & "\" & "AAA.txt" FilNo1 = FreeFile Open SrcFile For Input As #FilNo1 FilNo2 = FreeFile Open DstFile For Append As #FilNo2 Do While Not Eof(FileNo1) Line Input #FilNo1,strWork Print #FilNo2,strWork Loop Close #FilNo1 Close #FilNo2 End Sub
その他の回答 (2)
- Wendy02
- ベストアンサー率57% (3570/6232)
Shell "CMD.EXE /c COPY C:\B\AAA.txt + C:\A\050416~1.txt C:\B\AAA.txt " (98,Me は、"Command.com /C ") 昔ながらなら、DOSのCopy を使ってしまえば、簡単ですが、場合によっては、上記のように、ショート・ファイルネームにしなければとなると、"Scripting.FileSystemObject" を使って、パスを取得しなければならなくなり、ぼやけたコードになるような気がします。ただ、大きなファイルの時は、ファイルを開かないので有効かもしれません。一応、ご参考までに。
お礼
参考になりました。 また、ご指導お願い致します。
- kakusuke
- ベストアンサー率36% (95/259)
FileSystemObjectを検索してみてください。 Win98以降の標準的なライブラリです。
お礼
ありがとうございます。 見ましたけどなかなかわかりにくいです。
お礼
本当ですね、、殆んどわからないのです。 書いていただいたソースはよくわかります。 ありがとうございます。
補足
いやよくわかりました。 Dirですね、、すばらしい。 わからないことばかりで困っています。 また、よろしくお願い致します。