1. ホーム
  2. c#

[解決済み] ファイルをbyte[]に変換する確実な方法

2023-02-13 15:40:32

質問

以下のコードをウェブで見つけました。

private byte [] StreamFile(string filename)
{
   FileStream fs = new FileStream(filename, FileMode.Open,FileAccess.Read);

   // Create a byte array of file stream length
   byte[] ImageData = new byte[fs.Length];

   //Read block of bytes from stream into the byte array
   fs.Read(ImageData,0,System.Convert.ToInt32(fs.Length));

   //Close the File Stream
   fs.Close();
   return ImageData; //return the byte data
}

c#でファイルをbyte[]に変換するのに使うのは十分信頼できるでしょうか、それとももっと良い方法があるでしょうか?

どのように解決するのですか?

byte[] bytes = System.IO.File.ReadAllBytes(filename);

これでうまくいくはずです。ReadAllBytesはファイルを開き、その内容を新しいバイト配列に読み込み、そしてファイルを閉じます。以下は MSDN ページ をご覧ください。