- 締切済み
こんな場合はどうすればいいの?
あるフォームにコントロール配列のテキストボックスを10個くらい置いて おきます。 テキストファイル(.txt)から文字を読みとり一行一テキストボックスに格納していきます。 テキストボックスは改変可能でつねに変更されます。 あるテキストボックスには文字があったり、別のテキストボックスには文字がなかったり。 ここから質問です。 フォームを閉じる際、同じテキストファイルに改変したテキストボックスの内容を格納します。 テキストファイルの内容を全部クリアして書き込みしていくのがいいのでしょうか? なにかすっきりしたやり方があれば教えてください。 VB6.0でスキルはLowです。よろしくお願いします。
- みんなの回答 (3)
- 専門家の回答
みんなの回答
- 2ch
- ベストアンサー率51% (64/125)
ファイル操作については、手持ちのMSDNでFreeFile関数を調べてみるべし! わからなかったらここのBBSで調べるべし! ファイルの変更されたかどうかは、各テキストに書かれたタイミングで各テキスト.Tagに記しておくと、変更されたかチェックを行いやすい。 コマンドボタンを押されたタイミングで行うか、あるいはQueryUnloadかUnloadイベントでチェックを行ったら言いと思うぞい
- imogasi
- ベストアンサー率27% (4737/17069)
質問の意味がよく捉えられなかった。 (1)>テキストファイル(.txt)から文字を読みとり一行一テキストボックスに格納していきます。 ・テキストボックスの貼り付け数が10個として、ファイルのレコードは10個以上あるのか。全部読みこんでも 10レコード以内なのか。文章内の1センテンスのように 関連のない・同列的なものなのか、あるいはテキストボックスの10個のデータは、1人分の名前・住所・電話番号等のようにセット性のあるものなのか。 (2)>テキストボックスは改変可能でつねに変更されます。 ・テキストボックスの「テキストの内容が」操作者が「改変可能」で、例えば変更するかも知れないと言うことか。 (3)>あるテキストボックスには文字があったり、別のテキストボックスには文字がなかったり。 ・「文字がなかったり」とは、テキストファイルに空白レコードがあることがあるとか、操作者が削除することがあるということか。例えば携帯電話番号のように持ってない人がいるとか。 (4)>フォームを閉じる際、同じテキストファイルに改変したテキストボックスの内容を格納します。 ・レコードが10レコード以上あれば、次の10レコード を読みに行く時、直前10レコード分の変更後結果は どうにかしなければならないはずだが、どう考えているのか。 (5)>テキストファイルの内容を全部クリアして書き込みしていくのがいいのでしょうか? ・この意味が不明。現状を書き「出し」して、次の10レコードを読みこんだらテキストボックスの前の内容は消える。ただ最後は10レコード未満があり得るので先にテキストボックスの内容をクリアしておく。 (6)>「書きこみ」 ランダムファイルを除き、単純であるテキストファイルなどは、インプットファイルとアウトプットファイルは 別物であることが認識していますか。別ファイル名、ディスクの記憶エリアも別のはず。
- taknt
- ベストアンサー率19% (1556/7783)
VBの場合は、作成時の内容がデフォルトとなります。 普通は、起動時にテキストボックスの内容をクリアします。
お礼
回答ありがとうございました。 テキストファイルの内容はセーブデータなので保存します。 これをファイル操作で行おうとしています。
お礼
回答ありがとうございました。 わかりにくい質問で失礼しました。やはりプログラムを人に説明するのはむずかしいですね。 (1)について。関連のない同列的なものです。 (2)について。テキストボックスのテキストの内容を操作者が「こんにちは」や「徳川 家康」のように自由に改変できます。変更もOkです。 (3)操作者はテキストの内容をクリアすることができます。削除だと1行削除という印象ですけど、改行コードは残るのでクリアになります。 ある時点で「徳川 家康」とテキストボックスにあってもそれをDeleteキーで消せます。ただ、改行コードは残しておきます。 (4)これはちょっとわからないですが、テキストファイルの10行分しか行は使用しない予定です。 その10行がたとえば・・・ こんにちは 徳川家康 さむらい 東京 武蔵村山 : と入っているとすればこれらはどんなふうにも操作者が改変可能です。 改変後。 こんにちは 織田信長 東京 古代 武蔵村山 : となるかもしれません。この変える作業は操作者はテキストファイル上で行うのではなく10個おいたテキストボックスで変更できます。 (5)読み込んだらテキストファイルの内容はクリアされるんでしたっけ?調べてみます。 (6)ちょっと難解です。 イメージが伝わらなければ補足します。