Feedback

C# - Datei Teilweise einlesen (gestückelt)

Veröffentlicht von am 27.03.2010
(5 Bewertungen)
Mit der Methode kann man selbstgewälte Teile einer Datei einlesen.

Beispielaufruf:

byte[] b = GetBytesFromFile(@"C:\test.mp3", 0, 1000);

Dies würde die ersten 1000 bytes der mp3 zurückgeben.
            public static byte[] GetBytesFromFile(string FileName, long start, int count)
            {
                FileStream fs = new FileStream(FileName, FileMode.Open);
                BinaryReader reader = new BinaryReader(fs);

                reader.BaseStream.Position = start;
                byte[] Data = reader.ReadBytes(count);

                reader.Close();
                fs.Close();

                return Data;
            }

4 Kommentare zum Snippet

hackman schrieb am 13.04.2010:
schlecht geschrieben, dateioperationen sollen in einem using block untergebracht werden, damit auch in einem fehlerfall die datei ordnungsgemäß geschlossen wird
hackman schrieb am 21.05.2010:
streams und streamreader in using statements verwenden!!!
Christopher Kk schrieb am 21.05.2010:
Was soll das hackman? Wieso wiederholst du dich?Willst du kommentare sammeln?
keco schrieb am 21.05.2010:
Nur weil eine Besonderheit des Compilers ab Visual Studio 2008 nicht verwendet wurde heißt das nicht automatisch, dass ein Snippet FALSCH ist! In einem Try-[Catch]-Finally-Statement ist eine solche Möglichkeit ebenfalls gegeben (dafür gibt es eben das Finally). Abgesehen davon kann es sowieso nicht schaden ein Try-Catch-Block bei Dateioperationen zu verwenden. (PS: Kommentare geben "Punkte"?)
 

Logge dich ein, um hier zu kommentieren!