Pobieranie pliku przez FileStream

0

Cześć, pisze program który pobiera dane w postaci pliku binarnego z pamięci zewnętrznego rejestratora mowy poprzez USB (2.0). Pliki są dość duże a prędkość tej wersji Usb kiepska. Potrzebuje natomiast w programie odczytać tylko 4096 bajtów z tego dużego pliku, a metoda FileStrem.OpenRead() zawsze pobiera całość pliku i z kilkudziesięciu dużych plików to dość długo trwa. Jest jakiś sposób żeby odczytać z pliku USB tylko te 4096 bajtów?

0
using var fs = new FileStream(path,  FileMode.Open, FileAccess.Read);
var br = new BinaryReader(fs);
byte[] buff = br.ReadBytes(4096);
//System.Text.Encoding.Default.GetString(buff) <-- jakbys chcial to jako tresc z jakiegos powodu

tylko sprawdz czy plik ma te min. 4096 znakow bo sie wywali :P

2
karol901103 napisał(a):

metoda FileStrem.OpenRead() zawsze pobiera całość pliku

Czy aby na pewno?
Jestem przekonany że FileStream.OpenRead otwiera strumień, a to ile później z niego odczytasz i po ile bajtów na raz zależy już od tego co robisz z tym strumieniem.

1 użytkowników online, w tym zalogowanych: 0, gości: 1