English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

تعليمية Java الأساسية

Java التحكم بالسلسلة

Java مصفوفات

Java موجه بالأشياء (I)

Java موجه بالأشياء (II)

Java موجه بالأشياء (III)

معالجة الاستثناءات في Java

Java قائمة (List)

Java Queue (الصف)

Java Map المجموعات

Java Set المجموعات

Java إدخال/إخراج (I/O)

Java Reader/Writer

مواضيع أخرى Java

Java8 Base64

ميزات Java 8 الجديدة

أصبح الترميز Base64 في Java 8 جزءًا من مكتبة Java القياسية.

يحتوي Java 8 على معالج الترميز والفك الترميز Base64 المدمج.

يقدم مكتبة Base64 أدوات مجموعة من الطرق الثابتة للحصول على ثلاثة أنواع من معالجات الترميز والفك الترميز BASE64.

  • أساسي:ت映射 الناتج إلى مجموعة من الأحرف A-Za-z0-9+/، ويتم إضافة أي علامات خط إلى الترميز، والفك الترميز يدعم فقط A-Za-z0-9+/.

  • URL:ت映射 الناتج إلى مجموعة من الأحرف A-Za-z0-9+_، ويكون الناتج URL وملف.

  • MIME:ت映射 الناتج إلى تنسيق MIME صديق للمستخدم. يجب أن لا يتجاوز كل سطر 76 حرفًا، ويستخدم '\r' يتبعه '\n' كفصل.

صنف داخلي

الرقم التسلسليصنف داخلي & الوصف
1static class Base64.Decoder

يحقق هذا الصنف م解码ر يستخدم الترميز Base64 للفك ترميز بيانات البايت.

2static class Base64.Encoder

يحقق هذا الصنف م编码ر، يستخدم الترميز Base64 لترميز بيانات البايت.

الطريقة

الرقم التسلسلياسم الطريقة & الوصف
1static Base64.Decoder getDecoder()

يقدم بيانات Base64.Decoder، يستخدم نظام الترميز base64 الأساسي للفك الترميز.

2static Base64.Encoder getEncoder()

يقدم بيانات Base64.Encoder، يستخدم نظام الترميز base64 الأساسي للترميز.

3static Base64.Decoder getMimeDecoder()

返回一个 Base64.Decoder ,解码使用 MIME 型 base64 编码方案。

4

static Base64.Encoder getMimeEncoder()

返回一个 Base64.Encoder ,编码使用 MIME 型 base64 编码方案。

5static Base64.Encoder getMimeEncoder(int lineLength, byte[] lineSeparator)

返回一个 Base64.Encoder ,编码使用 MIME 型 base64 编码方案,可以通过参数指定每行的长度及行的分隔符。

6static Base64.Decoder getUrlDecoder()

返回一个 Base64.Decoder ,解码使用 URL 和文件名安全型 base64 编码方案。

7static Base64.Encoder getUrlEncoder()

返回一个 Base64.Encoder ,编码使用 URL 和文件名安全型 base64 编码方案。

注意:Base64 类的很多方法从 java.lang.Object 类继承。

Base64 示例

以下示例演示了 Base64 的使用:

import java.util.Base64;
import java.util.UUID;
import java.io.UnsupportedEncodingException;
 
public class Java8Tester {
   public static void main(String args[]){
      try {
        
         // 使用基本编码
         String base64encodedString = Base64.getEncoder().encodeToString("w3codebox?java8".getBytes("utf-8"));
         System.out.println("Base64 编码字符串 (基本) :" + base64encodedString);
        
         // الترميز
         byte[] base64decodedBytes = Base64.getDecoder().decode(base64encodedString);
        
         System.out.println("السلسلة الأصلية: ": + new String(base64decodedBytes, "utf-8"));
         base64encodedString = Base64.getUrlEncoder().encodeToString("w3codebox?java8".getBytes("utf-8"));
         System.out.println("م编码 الأساسي (URL): ": + base64encodedString);
        
         StringBuilder stringBuilder = new StringBuilder();
        
         for (int i = 0; i < 10; ++i) {
            stringBuilder.append(UUID.randomUUID().toString());
         }
        
         byte[] mimeBytes = stringBuilder.toString().getBytes("utf-8");
         String mimeEncodedString = Base64.getMimeEncoder().encodeToString(mimeBytes);
         System.out.println("م编码 الأساسي (MIME): ": + mimeEncodedString);
         
      }
         System.out.println("Error ": + e.getMessage());
      }
   }
}

إذا قمت بتشغيل السكربت المسبق، النتيجة ستكون:

$ javac Java8Tester.java 
$ java Java8Tester
السلسلة الأصلية: w3codebox?java8
م编码 الأساسي (URL): VHV0b3JpYWxzUG9pbnQ_amF2YTg=
م编码 الأساسي (MIME): M2Q4YmUxMTEtYWRkZi00NzBlLTgyZDgtN2MwNjgzOGY2NGFlOTQ3NDYyMWEtZDM4ZS00YWVhLTkz
OTYtY2ZjMzZiMzFhNmZmOGJmOGI2OTYtMzkxZi00OTJiLWEyMTQtMjgwN2RjOGI0MTBmZWUwMGNk
NTktY2ZiZS00MTMxLTgzODctNDRjMjFkYmZmNGM4Njg1NDc3OGItNzNlMC00ZWM4LTgxNzAtNjY3
NTgyMGY3YzVhZWQyMmNiZGItOTIwZi00NGUzLTlkMjAtOTkzZTI1MjUwMDU5ZjdkYjg2M2UtZTJm
YS00Y2Y2LWIwNDYtNWQ2MGRiOWQyZjFiMzJhMzYxOWQtNDE0ZS00MmRiLTk3NDgtNmM4NTczYjMx
ZDIzNGRhOWU4NDAtNTBiMi00ZmE2LWE0M2ItZjU3MWFiNTI2NmQ2NTlmMTFmZjctYjg1NC00NmE1
LWEzMWItYjk3MmEwZTYyNTdk

ميزات Java 8 الجديدة