御世話になります。
2つのテキストファイルがあります。
テキストファイルの項目は、
氏名、フリガナ、住所、電話番号がはいっています。
項目の区切り文字は、★です。
2つのテキストファイルのデータが相違している項目数を求めて表示するには
どのような処理をいれたらいいでしょうか?
初心的な質問で申し訳御座いませんがよろしくお願い致します。
>項目の区切り文字は、★です。
csv(Comma Separated Value)のほうが一般的ですから、
できればデリミタをカンマにしたほうがいろいろ便利ですが・・・。
行数、列数、行並びが固定なら、両ファイルを開いて、1行ずつ読んで、
★でSplitして各要素を比較してカウントしていけばいいでしょう。
行並びが不定なら、一方のキー項目でもう一方を廻して探す処理が必要になります。
その場合、自前でファイル処理するよりDBで処理したほうが楽でしょう。
Excelが得意なら、WorkSheetに取り込んで処理させるという手もあります。
Sayさんご返答ありがとうございます。
参考に致しますね。
話は変わりますが、上記の処理を行うためのサンプルソース等はないでしょうか?
色々調べてはいるのですが、わからない状態でして・・・。
大変申し訳ありませんがよろしくお願い致します。
調べるのでなく、考えてください。
書いてあるとおりにコードを組むだけです。
既存のファイル比較ツールではだめですか?
fc とか diff とか Windiff とか?
似たような処理をVBでやっております。
行並び不定の二つのCSVファイルを、各々配列に格納し、
同様のソート処理をかけてから、シーケンシャルマッチングで
同データの行と思われるところをキーで結びつけ、その後に比較しています。
ファイルは10万〜30万行ぐらいのものを行っております。
大量データで間違いの箇所が多いならコーディングも必要でしょうけど、
有るか、無いかぐらいなら、ひろさんのおっしゃる通り、既存のものでも
良いかもしれません。
ツイート | ![]() |