Mit byte Array handieren?
-
Hallo Leute,
Code:
byte[] foo = new byte[100]; byte[] bar = new byte[10];
nun möchte ich bspw. die 10 byte aus bar an der stelle 5 in foo einfügen.
Geht das nur mit MemoryStream??? oder gibt "manuelle" möglichkeiten?
-
for( i = 0; i < 10; i++ ) { foo[i + 5] = bar[i]; }
Ist zwar nicht flexibel und Speicherüberläufe, etc. werden nicht abgefangen, aber soll ja nur das Prinzip zeigen.
Sollte doch so funktionieren oder!?
-
Schau Dir mal Array..::.Copy an
-
hab so was gefunden:
bar.CopyTo(foo,/*BYTEPOS*/);
:xmas1:
-
warum arbeitest du nicht generell mehr mit generischen listen ? ist doch viel sicherer was die erweiterbarkeit und handhabe angeht
also List<byte> statt byte[]
von list<T> to T[] ist es doch nur eine methode weitder groesste vorteil ist das du N elemente anhaengen - einfuegen usw kannst ohne mehr speicher allokieren zu muessen und ggf das gesammte array per hand umkopieren zu muessen
-
ja du hast schon recht.. wollte das wegen performance gründen machen... aber ich muss soweio testen ob es performacne technisch was ausmacht. WEnn ich mit rohdaten hantieren will, finde ich aber MemoryStream (für meine zwecke) besser als Liste;)