| |
ASP.NET, WebServices u. Remotinggzip String von PHP Script (gzencode) in VB.NET entpacken | | | Autor: Amanogarnele | Datum: 01.11.14 18:08 |
| Hallo zusammen,
ich habe ein PHP-Skript welches Daten aus einer MySQL Datenbank liefert. Diese werden per http-request von meiner vb.net anwendung abgeholt. Klappt alles super!
Jetzt gibt es aber auch den Fall das die Datenmenge hoch ist. Daher dachte ich mir ich komprimiere den output auf der PHP Seite und dekomprimiere ihn auf VB Seite um Zeit zu sparen. Ich schaffe es aber nicht einen mit gzencode gepackten String auf der VB Seite mit der System.IO.Compression.GZipStream Klasse zu dekomprimieren.
Hat sowas vielleicht schomal einer gemacht und kann mir ein funktionierendes Stück Code bereitstellen? Wäre sehr dankbar.
Das ist der Code auf der PHP Seite:
$output = base64_encode(gzencode('Hallo Welt',9)); Ich habe mehrere Beispiele im Netz gefunden, ausprobiert. Immer auf das base64 encoding geachtet aber ich bekomme den Ursprung nicht herauskodiert. Oft bekomme ich die Fehlermeldung das mit dem Magic Byte etwas nicht stimmt.
Ich hoffe mir kann jemand helfen!
Vielen Dank im Voraus,
Patrick
PS: Folgenden Code habe ich probiert
Public Shared Function UnZip(compressedText As String) As String
Dim gzBuffer As Byte() = Convert.FromBase64String(compressedText)
Using ms As New MemoryStream()
Dim msgLength As Integer = BitConverter.ToInt32(gzBuffer, 0)
ms.Write(gzBuffer, 4, gzBuffer.Length - 4)
Dim buffer As Byte() = New Byte(msgLength - 1) {}
ms.Position = 0
Using zipStream As New System.IO.Compression.GZipStream(ms, _
System.IO.Compression.CompressionMode.Decompress)
zipStream.Read(buffer, 0, buffer.Length)
End Using
Return System.Text.Encoding.Unicode.GetString(buffer, 0, buffer.Length)
End Using
End Function | |
Re: gzip String von PHP Script (gzencode) in VB.NET entpacken | | | Autor: Amanogarnele | Datum: 03.11.14 15:18 |
| Hallo DaveS,
natürlich! Das hatte ich voll vergessen...
Folgender String wird erstellt: H4sIAAAAAAACC/NIzMnJVwhPzSkBAHUUKFAKAAAA
$output = base64_encode(gzencode('Hallo Welt',9));
$output = gzdecode(base64_decode('H4sIAAAAAAACC/NIzMnJVwhPzSkBAHUUKFAKAAAA',9));
Wird vom PHP Skript auch völlig korrekt dekodiert... | |
Re: gzip String von PHP Script (gzencode) in VB.NET entpacken | | | Autor: Amanogarnele | Datum: 03.11.14 18:09 |
| Hallo DaveS,
das funktioniert leider nicht. Ich (muss) das Framework 3.5 nutzen. Hier gibt es u.a. die CopyTo Methode nicht
Hast du dafür noch eine Alternative? | |
| Sie sind nicht angemeldet! Um auf diesen Beitrag zu antworten oder neue Beiträge schreiben zu können, müssen Sie sich zunächst anmelden.
Einloggen | Neu registrieren |
|
|
sevISDN 1.0
Überwachung aller eingehender Anrufe!
Die DLL erkennt alle über die CAPI-Schnittstelle eingehenden Anrufe und teilt Ihnen sogar mit, aus welchem Ortsbereich der Anruf stammt. Weitere Highlights: Online-Rufident, Erkennung der Anrufbehandlung u.v.m. Weitere InfosTipp des Monats sevOutBar 4.0
Vertikale Menüleisten á la Outlook
Erstellen von Outlook ähnlichen Benutzer- interfaces - mit beliebig vielen Gruppen und Symboleinträgen. Moderner OfficeXP-Style mit Farbverläufen, Balloon-Tips, u.v.m. Weitere Infos
|
|
|
Copyright ©2000-2024 vb@rchiv Dieter Otter Alle Rechte vorbehalten.
Microsoft, Windows und Visual Basic sind entweder eingetragene Marken oder Marken der Microsoft Corporation in den USA und/oder anderen Ländern. Weitere auf dieser Homepage aufgeführten Produkt- und Firmennamen können geschützte Marken ihrer jeweiligen Inhaber sein.
Diese Seiten wurden optimiert für eine Bildschirmauflösung von mind. 1280x1024 Pixel
|
|