• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:重複データを書き込まないようにするには?(VB))

重複データを書き込まないようにするには?(VB)

このQ&Aのポイント
  • VB(2010)初心者の方が、ボタンクリックでテキストボックスに入力したデータをテキストファイルに追加書き込む際に、重複するデータを書き込まない方法を知りたいです。
  • 現在のコードでは、重複データのチェックが行われていないため、同じデータが複数回書き込まれる可能性があります。
  • 重複データを書き込まないようにするためには、書き込む前に既存のデータとの重複チェックを行い、重複している場合は書き込まないようにする必要があります。

質問者が選んだベストアンサー

  • ベストアンサー
回答No.1

>下記コードにどのような記述を付け加えたら良いのでしょうか ファイルに (1)何のデータが入っているかを見て (2)入力した物と同じでなければ書き込む と云った処理が必要ですね 具体的にコードを書く際には 1.データとはどのような形式なのか   ただのテキストなのか、カンマ区切りなどの複数要素を持つ物なのか 2.1に加え、同じデータとはどのように判断するのか   完全一致なのか、それとも部分一致なのか 3.入力するデータは一行(一つだけ)なのか、複数行(複数データ可)なのか に気を付けて作る必要があります。

その他の回答 (1)

  • imogasi
  • ベストアンサー率27% (4737/17069)
回答No.2

既に入力したデータを、使いやすいように保持しておくしかない。 これは理屈でそうなるもので、他にはどうしようもない。前に入力したデータが判らないと重複かどうかチェックしようが無い。 (1)その保持するやり方に、後に(といってもその作業が終わるまで)検索するに便利な構造を持ち込んで保持するか、そのままの順序で保持するかなど、考えられる。 またDictionaryなどの仕組みを持つ手もある。 http://wednesdaymoon.net/kzweb/articles/vbnet/article.aspx?articleid=38 エクセルなどは入力したデータはセルに保持されるので、なんらこういうことを考えなくて、検索するだけの問題ですが。 (2)もうひとつは、入力したデータをファイルになったものを読んで調べるかだが、普通はファイルをクローズしないと読めない場合もあり難しいが、ADOのダイナセットのようなもので対処できないかと思うが(VB.NETであるかどうか知らない) (3)配列に入力されたデータで重複をチェックするキーに当たるデータをそれまでの分を保持して、次の入力時にその中に無いかどうかをチェックする。順次探索になるだろう。 これは割合思いつきやすい方法だろう。 (4)入力し終わってから、ファイルの中に重複をさがし、指摘する方法で、妥協(我慢)する方法とか。

関連するQ&A