[解決済み] C#で大きなファイルをバイト配列に読み込む最良の方法?
2022-03-22 03:52:41
質問
私は、大きなバイナリファイル(数メガバイト)をバイト配列に読み込むウェブサーバを持っています。サーバーは同時に複数のファイル(異なるページ要求)を読み取ることができるので、私はCPUにあまり負担をかけずにこれを行うための最も最適化された方法を探しています。以下のコードで十分でしょうか?
public byte[] FileToByteArray(string fileName)
{
byte[] buff = null;
FileStream fs = new FileStream(fileName,
FileMode.Open,
FileAccess.Read);
BinaryReader br = new BinaryReader(fs);
long numBytes = new FileInfo(fileName).Length;
buff = br.ReadBytes((int) numBytes);
return buff;
}
解決方法は?
で全体を置き換えるだけです。
return File.ReadAllBytes(fileName);
ただし、メモリ消費量が気になる場合は ではなく は、ファイル全体を一度にメモリに読み込むことができます。チャンク単位で行うべきでしょう。
関連
-
[解決済み] 保護レベルによりアクセス不能になりました。
-
[解決済み】「入力文字列が正しい形式ではありませんでした」エラーの解決方法は?[重複しています]。
-
[解決済み】Unity3DでOnTriggerEnterが動作しない件
-
[解決済み] [Solved] 不正な文字列値: '\xEFxBFxBD' for column
-
[解決済み] C#のオートプロパティに初期値を与える最良の方法は何ですか?
-
[解決済み] ストリームからのバイト配列の作成
-
[解決済み] JavaでInputStreamをバイト配列に変換する
-
[解決済み] C#で文字を繰り返し表示する最適な方法
-
[解決済み] Javaでバイト配列から16進文字列に変換する方法は?
-
[解決済み] アプリケーションフォルダのパスを取得する最適な方法
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み】「未割り当てのローカル変数を使用」とはどういう意味ですか?
-
[解決済み】プログラム実行中に1秒待つ
-
[解決済み】「namespace x already contains a definition for x」エラーの修正方法は?VS2010にコンバートした後に発生しました。
-
[解決済み】非静的メソッドはターゲットを必要とする
-
[解決済み] 'IEnumerable<SelectListItem>' 型の ViewData アイテムで、キーが国であるものは存在しない。
-
[解決済み】なぜこのコードはInvalidOperationExceptionを投げるのですか?
-
[解決済み】Socket.Selectがエラー "An operation was attempted on something that is not a socket" を返す。
-
[解決済み】Visual Studio: 操作を完了できませんでした。パラメータが正しくありません
-
[解決済み】OnCollisionEnter2Dが実行されない?
-
[解決済み】2年前のMSDateを把握する【クローズド