ファイルのデータを読み取る方法はありますが、ファイルの終わりを過ぎてもハード ドライブ上のデータを引き続き読み取る方法はありますか? 通常のファイル I/OI では fread() を使用できますが、明らかに、それはファイルの最後までしか読み取れません。また、Windows コンピューターでこれが必要であることを追加すると、有益な場合があります。
これを行う方法についての私のグーグル検索は、代わりに、通常の I/O に問題がある人など、EOF に関する無関係なトピックに関する結果を考え出すことです。
これは、作業中のテキスト ファイルのテキストの一部を誤って削除してしまい、丸 1 日かかる作業だったからです。私はたくさんのファイル回復に関することをグーグルで調べましたが、それはすべて削除されたファイルの回復に関するものであるようです。私の問題は、ファイルがまだそこにあるが、その情報の一部がないことです。そのデータの一部がまだ直接存在することを望んでいます現在マークされているファイルの終わりの後、他の場所で断片化されていないか、すでに要求されているか、上書きされていません。これに具体的に役立つプログラムが見つからないので、すぐに何かを補うことができることを願っています(関係する内容によっては、作業をやり直すほど実行できない場合があることは理解していますが、そうでないことを願っています)。
私が予測できる限り、私は正しくないかもしれませんが (よくわからないので助けを求めています)、3 つの可能性があります。
3 つのうち最悪の場合: ハード ドライブ全体への直接アクセスを可能にする Windows API 関数 (おそらく、メモリの関数に似ていますか? 私が経験したもの) を検索し、全体をスキャンして、まだ持っているデータを探す必要があります。ファイルからアクセスして、その後にあるものを見続けます。
2 番目: ファイルへのポインターを取得できますが、それでも HD への生のアクセスを取得する必要がありますが、少なくともファイルへのポインターは含まれていますか?
ベスト 3: 書き込みアクセス用にファイルを開き、最後までシークし、EOF を過ぎてより多くのスペースを要求する方法を書き込みます。実際に私が探しているものであるその場所の以前のデータであったガベージデータを取得しますか? そんなに単純なら素晴らしいのですが、失敗するとデータが失われるのでテストするのが怖いので、他の誰かがすでに知っていることを願っています. 問題の PC は、Windows の悲惨な詳細を知っている人にとって重要であれば、Vista Home Premium を実行しています。
これらの 3 つのいずれかがもっともらしいと思われますか? そうか否かにかかわらず、私は他の提案、特に私のばかげたアイデアよりも優れたもの、特に仕事を成し遂げるために使用する特定の機能への方向性があれば、オープンです (そして熱望しています)。
また、削除されたファイルを回復するだけでなく、このような状況で実際に機能し、無料で信頼できる回復プログラムについて実際に聞いたことがあれば、それも機能します.
ご協力いただきありがとうございます。