Java 文字列をバイトに変換する方法

  1. Java 文字列をバイトに変換するための getBytes() メソッド
  2. Java で文字列を変換するための特定のエンコーディングを備えた getBytes() メソッド

このチュートリアルでは、Java の「文字列」を「バイト」に変換する方法を学びます。この変換は、要件に応じて異なるクラスを使用して実行できます。場合によっては、ユーザーはバイトに変換しながらエンコードも実行する必要があります。要件ごと。

Java 文字列をバイトに変換するための getBytes() メソッド

最初のメソッドは、Java の getBytes() メソッドです。このメソッドは文字列を取得し、配列内のバイトに変換します。

コード例:

import java.util.Arrays;
import java.text.*;
import java.util.Date;

public class SimpleTesting {
    public static void main(String[] args) {
        String string = "Simple Testing";
        byte[] bytes = string.getBytes();
        System.out.println("String: " + string);
        System.out.println("Bytes: " + Arrays.toString(bytes));
    }
}

出力:

String: Simple Testing
Bytes: [83, 105, 109, 112, 108, 101, 32, 84, 101, 115, 116, 105, 110, 103]

Java で文字列を変換するための特定のエンコーディングを備えた getBytes() メソッド

互換性のあるプラットフォーム用に文字列配列を UTF-8 エンコーディングの byte に変換するには、getBytes(StandardCharsets.UTF-8) メソッドを使用できます。これはデフォルトの getBytes() メソッドと同様に機能し、指定されたエンコード形式でエンコードされた出力を返します。

コード例:

import java.util.Arrays;
import java.text.*;
import java.util.Date;
import java.nio.charset.Charset;
import java.nio.charset.StandardCharsets;

public class SimpleTesting {
    public static void main(String[] args) {
        String string = "Simple Testing with UTF-8 Encoding";
        byte[] bytes = string.getBytes(StandardCharsets.UTF_8);
        System.out.println("String: " + string);
        System.out.println("Bytes: " + Arrays.toString(bytes));
    }
}

出力:

String: Simple Testing with UTF-8 Encoding
Bytes: [83, 105, 109, 112, 108, 101, 32, 84, 101, 115, 116, 105, 110, 103, 32, 119, 105, 116, 104, 32, 85, 84, 70, 45, 56, 32, 69, 110, 99, 111, 100, 105, 110, 103]

getBytes() メソッドで使用できる別のエンコード形式は、関連する互換性のあるプラットフォーム用の defaultCharset です。

コード例:

import java.util.Arrays;
import java.text.*;
import java.util.Date;
import java.nio.charset.Charset;
import java.nio.charset.StandardCharsets;
public class SimpleTesting {
    public static void main(String[] args) {
        String string = "Simple Testing with default Charset Encoding";
        byte[] bytes = string.getBytes(Charset.defaultCharset());
        System.out.println("String: " + string);
        System.out.println("Bytes: " + Arrays.toString(bytes));
    }
}

出力:

String: Simple Testing with default Charset Encoding
Bytes: [83, 105, 109, 112, 108, 101, 32, 84, 101, 115, 116, 105, 110, 103, 32, 119, 105, 116, 104, 32, 100, 101, 102, 97, 117, 108, 116, 32, 67, 104, 97, 114, 115, 101, 116, 32, 69, 110, 99, 111, 100, 105, 110, 103]

getBytes() メソッドで使用できるもう 1つのエンコード形式は、最新の互換性のあるプラットフォーム用の UTF-16 です。

コード例:

import java.util.Arrays;
import java.text.*;
import java.util.Date;
import java.nio.charset.Charset;
import java.nio.charset.StandardCharsets;
public class SimpleTesting {
    public static void main(String[] args) {
        String string = "Simple Testing with UTF-16 Encoding";
        byte[] bytes = string.getBytes(StandardCharsets.UTF_16BE);
        System.out.println("String: " + string);
        System.out.println("Bytes: " + Arrays.toString(bytes));
    }
}

出力:

String: Simple Testing with UTF-16 Encoding
Bytes: [0, 83, 0, 105, 0, 109, 0, 112, 0, 108, 0, 101, 0, 32, 0, 84, 0, 101, 0, 115, 0, 116, 0, 105, 0, 110, 0, 103, 0, 32, 0, 119, 0, 105, 0, 116, 0, 104, 0, 32, 0, 85, 0, 84, 0, 70, 0, 45, 0, 49, 0, 54, 0, 32, 0, 69, 0, 110, 0, 99, 0, 111, 0, 100, 0, 105, 0, 110, 0, 103]

関連記事 - Java String

  • Java で文字列から部分文字列を削除する方法
  • Java で文字列から文字列配列への変換を実行する方法
  • 関連記事 - Java Byte

  • Java で 16 進文字列のバイト配列を変換する方法
  • comments powered by Disqus