お世話になります。
vb6.0において
テキストファイルの読込に対して質問なんですが・・
拡張子が「ファイルAA.連絡」などに
変更されているファイルを使用しなくてはならないのですが・・
・
・
Open "c:\ファイルAA.連絡" For Input As FileFree
While Not EOF(FileFree)
Input #FileFree, tmpStr
str_データ = str_データ + tmpStr + vbCrLf
Wend
Close FileFree
・
・
上記のように 読み込もうとすると ファイルの認識がされないのですが・・
テキストファイル以外のファイル読込をそうすればできるか?それとも出来ないのか?
お教え下さい。よろしくお願いいたします。
「ファイルの認識がされないのですが」
という部分をもっと具体的に説明してもらえますか?
ちなみに拡張子がなんであれ、中身がテキストファイルであればInputモード
で読めますよ。
ファイル認識ができないと思ったのは・・
実行すると「ファイルが見つかりません。」と実行時エラーが出てきたためです。
一応 ファイルの中身は メモ帳で開くとテキストファイルなんですが・・
やはり ファイルが見つかりませんと エラーになってしまってます。
現状は 上記のとおりです。ご指導よろしくお願いいたします。
サンプルで提示されている内容と実際のプログラムが同じなら"."が2バイト文
字になっているからではないでしょうか。
それとも本当に拡張子なしの「ファイルAA.連絡」という名前のファイルなのか
な?
>実行すると「ファイルが見つかりません。」と実行時エラーが出てきたためです。
開いているファイルのパスとファイル名は確認されましたか?
プログラム中に直接パスを記述するのではなくコモンダイアログで名前を
取得してもだめですか?
おそらくエラーメッセージ通りの原因だと思いますが。
同じ名前で作ったファイルで試したところ ご指導のとおりファイルの認識ができました!
同じように頂いてきたテスト用の別ファイル(拡張子がテキスト以外)でも
試したところ 問題なく認識されました。。
(使っていたファイルに問題があったのか今のところわかりませんが・・
なにかわかりましたら 改めてご報告させいただきます。)
それから 誤入力などを防ぐためにコモンダイアログで名前を
取得してくるように改善するようにしました。
本当にいろいろご指導ありがとうございました(_ _;)
とりあえず・・解決です(^-^)/
解決しちゃってますがうまく伝わっていなかったようなので一応補足。
ファイル名についてですが、"."が2バイト(全角)文字の時はファイル名の一部
として認識されます。今回の場合は「ファイルAA.連絡」という拡張子なしのフ
ァイルを参照しようとしていました。(サンプル参考)
逆に"連絡"という拡張子を持つファイルを参照にしたい場合は"."を1バイト(
半角)にて記述する必要があります。例.「ファイルAA.連絡」
「ファイルAA.連絡」<---拡張子 無し
「ファイルAA.連絡」 <---拡張子 連絡
ツイート | ![]() |