Wie lautet der Code zum Umwandeln eines Bildes (maximal 200 KB) in einen Base64-String?
Ich muss wissen, wie es mit Android geht, da ich die Funktionalität zum Hochladen von Bildern auf einen Remote-Server in meiner Haupt-App hinzufügen und sie als Zeichenfolge in eine Zeile der Datenbank einfügen muss.
Ich suche in Google und in Stack Overflow, aber ich konnte keine einfachen Beispiele finden, die ich mir leisten kann, und ich finde auch einige Beispiele, aber sie sprechen nicht davon, sich in einen String umzuwandeln. Dann muss ich mich in eine Zeichenfolge verwandeln, um sie von JSON auf meinen Remote-Server hochzuladen.
Anstatt zu verwenden
Bitmap
, können Sie dies auch durch eine Trivialität tunInputStream
. Ich bin mir nicht sicher, aber ich denke, es ist ein bisschen effizient.quelle
Wenn Sie Base64 über JSON benötigen, lesen Sie Jackson : Es unterstützt explizit das Lesen / Schreiben von Binärdaten als Base64 sowohl auf der niedrigen Ebene (JsonParser, JsonGenerator) als auch auf der Datenbindungsebene. Sie können also nur POJOs mit byte [] -Eigenschaften haben, und das Codieren / Decodieren wird automatisch durchgeführt.
Und sollte das auch ziemlich effizient sein.
quelle
quelle
Dieser Code läuft perfekt in meinem Projekt:
quelle
Wenn Sie dies unter Android tun , finden Sie hier einen Helfer, der aus der React Native-Codebasis kopiert wurde :
quelle
Hier ist der Kodierungs- und Dekodierungscode in Kotlin:
quelle
quelle
Unten ist der Pseudocode, der Ihnen helfen kann:
quelle
Konvertieren Sie ein Bild in einen Base64-String in Android:
quelle
Hier ist Code für die Bildcodierung und Bilddecodierung.
In einer XML-Datei
In einer Java-Datei:
quelle
Wenn Sie nach einer effizienten Methode suchen, um eine Bilddatei ohne Komprimierung in eine Base64-Zeichenfolge zu konvertieren oder die Datei zuerst in eine Bitmap zu konvertieren, können Sie die Datei stattdessen als base64 codieren
Hoffe das hilft!
quelle
Verwenden Sie diesen Code:
quelle