Heim >Datenbank >MySQL-Tutorial >Ist Base64-Kodierung eine effiziente Methode für die kompakte UUID-Speicherung?

Ist Base64-Kodierung eine effiziente Methode für die kompakte UUID-Speicherung?

Patricia Arquette
Patricia ArquetteOriginal
2024-12-27 09:00:17362Durchsuche

Is Base64 Encoding an Efficient Method for Compact UUID Storage?

Base64-Kodierung für kompakte UUID-Speicherung

Frage:

Gibt es Probleme beim Speichern? eine UUID als Base64-Zeichenfolge, wobei die nachgestellten „==“-Zeichen zur Minimierung entfernt wurden Platz?

Antwort:

Base64-Kodierung kann die Größe einer UUID effektiv minimieren und gleichzeitig die Lesbarkeit beibehalten. Es ist jedoch wichtig, die Zeichenfolge korrekt zu dekodieren, um die ursprüngliche UUID wiederherzustellen.

Hier ist eine praktische Implementierung in Java:

import org.apache.commons.codec.binary.Base64;

public class UUIDBase64 {

    public static String uuidToBase64(String uuid) {
        UUID myUUID = UUID.fromString(uuid);
        ByteBuffer bb = ByteBuffer.wrap(new byte[16]);
        bb.putLong(myUUID.getMostSignificantBits());
        bb.putLong(myUUID.getLeastSignificantBits());
        return new Base64().encodeBase64URLSafeString(bb.array());
    }

    public static String uuidFromBase64(String base64UUID) {
        Base64 base64 = new Base64(); 
        byte[] bytes = base64.decodeBase64(base64UUID);
        ByteBuffer bb = ByteBuffer.wrap(bytes);
        UUID myUUID = new UUID(bb.getLong(), bb.getLong());
        return myUUID.toString();
    }
}

Verwendung:

String uuid = "6fcb514b-b878-4c9d-95b7-8dc3a7ce6fd8";
String base64UUID = UUIDBase64.uuidToBase64(uuid);
System.out.println("Base64 UUID: " + base64UUID);
String decodedUUID = UUIDBase64.uuidFromBase64(base64UUID);
System.out.println("Decoded UUID: " + decodedUUID);
System.out.println("Equal?: " + uuid.equals(decodedUUID));

Dieser Ansatz entfernt das nachgestellte „=="-Auffüllen, um eine kompakte 22-Zeichen-Zeichenfolge zu erzeugen, die leicht wieder dekodiert werden kann zur ursprünglichen UUID.

Das obige ist der detaillierte Inhalt vonIst Base64-Kodierung eine effiziente Methode für die kompakte UUID-Speicherung?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn