logo

Java Base64 kodavimas ir iššifravimas

„Java“ suteikia klasę „Base64“, skirtą šifravimui. Galite užšifruoti ir iššifruoti savo duomenis naudodami pateiktus metodus. Norėdami naudoti jo metodus, į šaltinio failą turite importuoti java.util.Base64.

Šioje klasėje yra trys skirtingi koduotuvai ir dekoderiai, skirti šifruoti informaciją kiekviename lygyje. Šiuos metodus galite naudoti toliau nurodytais lygiais.


Pagrindinis kodavimas ir dekodavimas

Kodavimo ir dekodavimo operacijoms naudojama Base64 abėcėlė, kurią Java nurodo RFC 4648 ir RFC 2045. Koduotuvas neprideda jokio eilučių skyriklio simbolio. Dekoderis atmeta duomenis, kuriuose yra simbolių už base64 abėcėlės ribų.


URL ir failo vardo kodavimas ir dekodavimas

Kodavimo ir dekodavimo operacijoms naudojama Base64 abėcėlė, kurią Java nurodo RFC 4648. Koduotuvas neprideda jokio eilučių skyriklio simbolio. Dekoderis atmeta duomenis, kuriuose yra simbolių už base64 abėcėlės ribų.


MIME

Kodavimo ir dekodavimo operacijoms naudojama „Base64“ abėcėlė, kaip nurodyta RFC 2045. Užkoduota išvestis turi būti pavaizduota eilutėmis, kurių kiekviena yra ne ilgesnė nei 76 simboliai, o kaip eilučių skyriklis turi būti naudojamas karietos grąžinimas „ “, po kurio iš karto eina eilutės tiekimas „ “. Užkoduotos išvesties pabaigoje nėra pridėtas eilučių skyriklis. Į visus eilučių skyriklius ar kitus simbolius, kurių nėra base64 abėcėlės lentelėje, dekodavimo operacijoje nepaisoma.


Įdėtos Base64 klasės

Klasė apibūdinimas
Bazė64.Dekoderis Šioje klasėje įdiegtas dekoderis baitų duomenims dekoduoti naudojant Base64 kodavimo schemą, kaip nurodyta RFC 4648 ir RFC 2045.
Bazė64.Kodavimo priemonė Ši klasė įgyvendina kodavimo įrenginį, skirtą baitų duomenims koduoti naudojant Base64 kodavimo schemą, kaip nurodyta RFC 4648 ir RFC 2045.

Base64 metodai

Metodai apibūdinimas
vieša statinė Base64.Decoder getDecoder() Jis grąžina Base64.Decoder, kuris dekoduoja naudojant Basic tipo base64 kodavimo schemą.
viešoji statinė Base64. Encoder getEncoder() Jis grąžina Base64.Encoder, kuris koduoja naudojant Basic tipo base64 kodavimo schemą.
vieša statinė Base64.Decoder getUrlDecoder() Jis grąžina Base64.Decoder, kuris dekoduoja naudodamas URL ir failo pavadinimo saugaus tipo base64 kodavimo schemą.
vieša statinė Base64.Decoder getMimeDecoder() Jis grąžina Base64.Decoder, kuris dekoduoja naudodamas MIME tipo base64 dekodavimo schemą.
vieša statinė Base64. Encoder getMimeEncoder() Tai grąžina Base64.Encoder, kuris koduoja naudojant MIME tipo base64 kodavimo schemą.
vieša statinė Base64. Encoder getMimeEncoder(int eilutės ilgis, baitas[] eilutės skyriklis) Jis grąžina Base64.Encoder, kuris koduoja naudodamas MIME tipo base64 kodavimo schemą su nurodytu eilutės ilgiu ir eilučių skyrikliais.
vieša statinė Base64. Encoder getUrlEncoder() Jis grąžina Base64.Encoder, kuris koduoja naudodamas URL ir failo pavadinimo saugaus tipo base64 kodavimo schemą.

Base64.Dekoderio metodai

Metodai apibūdinimas
viešasis baitas[] dekodavimas (baitas[] src) Jis dekoduoja visus baitus iš įvesties baitų masyvo, naudodamas Base64 kodavimo schemą, įrašydamas rezultatus į naujai paskirstytą išvesties baitų masyvą. Grąžintas baitų masyvas yra gautų baitų ilgio.
viešasis baitas [] dekodavimas (String src) Jis dekoduoja Base64 koduotą eilutę į naujai paskirstytą baitų masyvą, naudodamas Base64 kodavimo schemą.
viešasis int dekodavimas (baitas[] src, baitas[] dst) Jis dekoduoja visus baitus iš įvesties baitų masyvo, naudodamas Base64 kodavimo schemą, įrašydamas rezultatus į nurodytą išvesties baitų masyvą, pradedant nuo poslinkio 0.
viešas „ByteBuffer“ dekodavimas („ByteBuffer“ buferis) Jis dekoduoja visus baitus iš įvesties baitų buferio, naudodamas Base64 kodavimo schemą, įrašydamas rezultatus į naujai paskirstytą baitų buferį.
viešas „InputStream“ paketas (yra „InputStream“) Jis grąžina įvesties srautą, skirtą „Base64“ užkoduoto baitų srauto dekodavimui.

Bazė64.Kodavimo metodai

Metodai apibūdinimas
viešasis baitas[] kodavimas (baitas[] src) Jis koduoja visus baitus iš nurodyto baitų masyvo į naujai paskirstytą baitų masyvą, naudodamas Base64 kodavimo schemą. Grąžintas baitų masyvas yra gautų baitų ilgio.
viešasis int kodavimas (baitas[] src, baitas[] dst) Jis užkoduoja visus baitus iš nurodyto baitų masyvo, naudodamas Base64 kodavimo schemą, gautus baitus įrašydamas į nurodytą išvesties baitų masyvą, pradedant nuo poslinkio 0.
viešoji eilutė encodeToString(baitas[] src) Jis užkoduoja nurodytą baitų masyvą į eilutę, naudodamas Base64 kodavimo schemą.
viešas „ByteBuffer“ kodavimas („ByteBuffer“ buferis) Jis užkoduoja visus likusius baitus iš nurodyto baitų buferio į naujai paskirstytą baitų buferį, naudodamas Base64 kodavimo schemą. Grįžus šaltinio buferio padėtis bus atnaujinta iki ribos; jo riba nebus pakeista. Grąžinamo išvesties buferio padėtis bus lygi nuliui, o jo riba bus gautų užkoduotų baitų skaičius.
viešas „OutputStream“ paketas („OutputStream“ OS) Jis apvynioja išvesties srautą baitų duomenims koduoti naudojant „Base64“ kodavimo schemą.
public Base64. Encoder withoutPadding() Jis grąžina kodavimo egzempliorių, kuris koduoja lygiaverčiai šiam, bet neprideda jokio užpildymo simbolio užkoduotų baitų duomenų pabaigoje.

Java Base64 pavyzdys: pagrindinis kodavimas ir dekodavimas

 import java.util.Base64; publicclass Base64BasicEncryptionExample { publicstaticvoid main(String[] args) { // Getting encoder Base64.Encoder encoder = Base64.getEncoder(); // Creating byte array bytebyteArr[] = {1,2}; // encoding byte array bytebyteArr2[] = encoder.encode(byteArr); System.out.println('Encoded byte array: '+byteArr2); bytebyteArr3[] = newbyte[5]; // Make sure it has enough size to store copied bytes intx = encoder.encode(byteArr,byteArr3); // Returns number of bytes written System.out.println('Encoded byte array written to another array: '+byteArr3); System.out.println('Number of bytes written: '+x); // Encoding string String str = encoder.encodeToString('JavaTpoint'.getBytes()); System.out.println('Encoded string: '+str); // Getting decoder Base64.Decoder decoder = Base64.getDecoder(); // Decoding string String dStr = new String(decoder.decode(str)); System.out.println('Decoded string: '+dStr); } } 

Išvestis:

 Encoded byte array: [B@6bc7c054 Encoded byte array written to another array: [B@232204a1 Number of bytes written: 4 Encoded string: SmF2YVRwb2ludA== Decoded string: JavaTpoint 

Java Base64 pavyzdys: URL kodavimas ir dekodavimas

 import java.util.Base64; publicclass Base64BasicEncryptionExample { publicstaticvoid main(String[] args) { // Getting encoder Base64.Encoder encoder = Base64.getUrlEncoder(); // Encoding URL String eStr = encoder.encodeToString('http://www.javatpoint.com/java-tutorial/'.getBytes()); System.out.println('Encoded URL: '+eStr); // Getting decoder Base64.Decoder decoder = Base64.getUrlDecoder(); // Decoding URl String dStr = new String(decoder.decode(eStr)); System.out.println('Decoded URL: '+dStr); } } 

Išvestis:

 Encoded URL: aHR0cDovL3d3dy5qYXZhdHBvaW50LmNvbS9qYXZhLXR1dG9yaWFsLw== Decoded URL: http://www.javatpoint.com/java-tutorial/ 

Java Base64 pavyzdys: MIME kodavimas ir dekodavimas

 package Base64Encryption; import java.util.Base64; publicclass Base64BasicEncryptionExample { publicstaticvoid main(String[] args) { // Getting MIME encoder Base64.Encoder encoder = Base64.getMimeEncoder(); String message = 'Hello, 
You are informed regarding your inconsistency of work'; String eStr = encoder.encodeToString(message.getBytes()); System.out.println('Encoded MIME message: '+eStr); // Getting MIME decoder Base64.Decoder decoder = Base64.getMimeDecoder(); // Decoding MIME encoded message String dStr = new String(decoder.decode(eStr)); System.out.println('Decoded message: '+dStr); } } 

Išvestis:

 Encoded MIME message: SGVsbG8sIApZb3UgYXJlIGluZm9ybWVkIHJlZ2FyZGluZyB5b3VyIGluY29uc2lzdGVuY3kgb2Yg d29yaw== Decoded message: Hello, You are informed regarding your inconsistency of work