私は一般的にプログラミングに不慣れです(プログラミングの概念についての私の理解はまだ成長しています)。ですから、この質問は学習に関するものですので、私が学ぶのに十分な情報を提供してください。ただし、私ができないほど多くはありません。ありがとうございます。(プロジェクトでコードを再利用可能にする方法についても入力してください。)
私が取り組んでいるプロジェクトの目標は次のとおりです。
バイナリファイルを読み取ります。
このファイル内から特定のデータチャンクを見つけるために読み取る必要のあるオフセットを知っています。
最初のオフセットは最初の4バイトです(私のチャンクの終わりのオフセット)。
2番目のオフセットは、ファイルの終わりから16バイトです。私は4バイトを読みました(16進数でチャンクのサイズを示します)。
3番目のオフセットは、前の4バイトに続く4バイトで、4バイトで読み取られます(16進数のチャンクの開始のオフセット)。
ASCIIテキストとオフセットを検索して、変更するチャンク内のパーツを見つけます。
これで、チャンクの開始オフセット、終了オフセット、およびサイズがわかりました。これにより、ファイルからバイト配列にバイトを読み取り、配列のサイズを事前に知ることができます。
(質問:1。サイズを知ることは重要ですか?検証以外です。2。バイトを変更してファイルのその部分を上書きするために、ファイルの一部をバイト配列に読み込むのが最善の方法ですか?)
これまでのところ、MemoryStreamでBinaryReaderを使用してファイルからオフセットを読み取ることができました。次に、必要なデータのチャンクを見つけて、それをバイト配列に読み込みます。
私はいくつかの方法で立ち往生しています:
- バイナリ読み取り/書き込みのベストプラクティスは何ですか?
- 読み取られるデータの最適なストレージ規則は何ですか?
- バイトを変更する必要がある場合、どうすればよいですか。
- FileStreamを使用する必要がありますか?