2つのディレクトリ間でファイルをコピーするための基本的な同期プログラムを作成しようとしています。
計画では、すでにコピーされたファイルのある種のデータベースを用意して、プログラムがディレクトリをスキャンするときに、すでにコピーしたものと、再度コピーする必要があるもの、つまり変更されたファイルまたは新しいファイルを選択できるようにします。
アプローチ方法がわからない問題の1つは、ユーザーによって名前が変更されたファイルをどのように処理する必要があるかです。名前が変更されたファイルが、名前は異なりますが、実際にはデータベースにリストされているファイルと同じファイルであることをどのように確認できますか。プログラムが抽出できる基になるファイルIDはありますか?ファイルシステムが異なることを考えると、おそらくこれをより困難にするように、コードを移植可能にしたいと思います。
各ファイルのサイズと作成日をメモし、その情報をデータベースに保存して、ファイルの名前が実際に変更されたかどうかを判断できると考えていました。2つのファイルの情報サイズ/日付が同じである場合、ハッシュなどを保存して区別することはできますが、それがどれほど効率的かはわかりません。
助言がありますか?(私はC ++ / QTを使用しています)