2009-05-04 131 views
0

很多時候我們讀取文件流轉換爲字節數組的時候,我們會寫下面的代碼: -使用long數據類型創建一個字節數組?

Dim inputStream As New System.IO.FileStream(filePath, IO.FileMode.Open) 
Dim fileLength As Integer= CType(inputStream.Length, Integer) 
Dim input(fileLength) As Byte 

Using inputStream 
    inputStream.Read(input, 0, fileLength) 
End Using 

但在這裏我們必須長度轉換爲整數類型(上面的代碼中的第2行),因爲我們不能使用long數據類型聲明一個字節數組(使用strict選項)。這是一個很好的做法嗎?這個問題的解決方法是什麼?

回答

2

好的做法是使用File.ReadAllBytes,而不是整個事情:

Dim input = File.ReadAllBytes(filePath) 

順便說一句,如果你的文件將是大型(超過4 GB),你不會想要一次將所有內容加載到一個字節數組中,因爲它需要佔用4GB內存(並且在32位受管進程中,即使擁有更多內存,也不能擁有它)。

+0

我認爲你的意思是File.Read Not ReadAllBytes;) – 2009-05-04 12:02:16

相關問題