di luar
BinaryReader
untuk menukar aliran ke array byte adalah mungkin (terutamanya dalam .NET 3.5), ia memerlukan mengetahui panjang aliran terlebih dahulu. Ini tidak selalu praktikal. BinaryReader
. MemoryStream
ReadFully
menyediakan cara yang bersih untuk mencapai bacaan ini. Kaedah ini secara beransur -ansur membaca dan menambahkan data sehingga akhir aliran dicapai, dengan berkesan mencerminkan fungsi ReadFully
tanpa keperluan panjang. BinaryReader
Stream.CopyTo
yang mudah. Ini memudahkan proses dengan terus menyalin kandungan aliran ke dalam Stream.CopyTo
, yang kemudiannya dapat ditukar dengan mudah ke array byte. MemoryStream
melibatkan peruntukan memori dan menyalin. Walaupun boleh diterima untuk aliran kecil, prestasi boleh menderita dengan aliran besar. Strategi pengoptimuman termasuk pra-memperuntukkan Stream.CopyTo
ke saiz yang diharapkan atau menggunakan lebih banyak operasi salinan penampan langsung untuk kecekapan yang lebih baik. MemoryStream
Atas ialah kandungan terperinci Apakah cara terbaik untuk menukar aliran ke array byte di .net?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!