Hallo an alle,
ich versuche (bei der Lösung meines Problems noch) gerade einen byte Array zu dekomprimieren, aber genau so wie es die folgende Methode von C# macht:
Ich habe versucht, die Methode auf Java zu übersetzen, aber da das Ergebnis einen leeren Array zurückgibt, dachte ich, dass es sich nicht lohnt, meine (verheerende) Übersetzung zu zeigen.
Allerdings sollte es reichen mit dem folgendem Code:
Das Problem ist aber, dass ich die Methode für Java 7 und ohne externe Libraries brauche. Wäre das möglich oder wird es schwierig?
Liebe Grüße und vielen Dank
PS.: Die Ausgabe von der C#-Methode lautet:
ich versuche (bei der Lösung meines Problems noch) gerade einen byte Array zu dekomprimieren, aber genau so wie es die folgende Methode von C# macht:
C#:
public static byte[] Decompress(byte[] data)
{
try
{
byte[] r = null;
using (MemoryStream ms = new MemoryStream(data))
using (Stream s = new InflaterInputStream(ms)) //InflaterInputStream kommt aus der Library ICSharpCode.SharpZipLib.Zip.Compression.Streams
{
List<byte> list = new List<byte>();
int count = 0;
byte[] b = new byte[8192];
while ((count = s.Read(b, 0, 8192)) > 0)
list.AddRange(b.Take(count));
r = list.ToArray();
list.Clear();
list = null;
}
return r;
}
catch { }
return new byte[] { };
}
Ich habe versucht, die Methode auf Java zu übersetzen, aber da das Ergebnis einen leeren Array zurückgibt, dachte ich, dass es sich nicht lohnt, meine (verheerende) Übersetzung zu zeigen.
Allerdings sollte es reichen mit dem folgendem Code:
Java:
public static byte[] decompress(byte[] data) throws IOException {
try (InputStream ms = new ByteArrayInputStream(data);
InflaterInputStream s = new InflaterInputStream(ms)) {
return s.readAllBytes();
}
}
Das Problem ist aber, dass ich die Methode für Java 7 und ohne externe Libraries brauche. Wäre das möglich oder wird es schwierig?
Liebe Grüße und vielen Dank
PS.: Die Ausgabe von der C#-Methode lautet:
Code:
00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-43-48-41-54-43-48-41-4E-4E-45-4C-00-36-26-D2-37-31-D4-00-00-00-00-4D-41-59-4F-52-45-53-20-44-45-20-33-30-2C-34-30-2C-35-30-00-00