Rumah >Java >javaTutorial >Bagaimana untuk Menukar String kepada Heksadesimal dan Kembali di Jawa?

Bagaimana untuk Menukar String kepada Heksadesimal dan Kembali di Jawa?

Patricia Arquette
Patricia Arquetteasal
2024-12-07 21:17:15197semak imbas

How to Convert a String to Hexadecimal and Back in Java?

Menukar Rentetan kepada Perenambelasan dalam Java

Apabila bekerja dengan data binari atau kriptografi, menukar rentetan kepada perwakilan perenambelasannya menjadi penting. Di Java, proses penukaran ini boleh dicapai menggunakan kelas String dan kelas BigInteger.

Untuk menukar rentetan kepada perenambelasan, anda boleh menggunakan langkah berikut:

  1. Tukar rentetan kepada tatasusunan bait menggunakan getBytes() kaedah:

    byte[] bytes = myString.getBytes(/*YOUR_CHARSET?*/);
  2. Gunakan pembina BigInteger untuk mencipta objek BigInteger baharu daripada tatasusunan bait:

    BigInteger bi = new BigInteger(1, bytes);
  3. Gunakan format () kaedah kelas String untuk memformat objek BigInteger sebagai perenambelasan rentetan:

    String hexString = String.format("%040x", bi);

HexString yang terhasil akan menjadi perwakilan heksadesimal 40 aksara bagi rentetan asal.

Menukar Rentetan Heksadesimal Kembali kepada Rentetan

Proses menukar rentetan heksadesimal kembali kepada rentetan adalah serupa dengan proses di atas, tetapi sebaliknya.

  1. Tukar rentetan perenambelasan kepada objek BigInteger menggunakan pembina BigInteger:

    BigInteger bi = new BigInteger(hexString, 16);
  2. Gunakan kaedah getBytes() kelas BigInteger untuk menukar objek BigInteger kepada tatasusunan bait:

    byte[] bytes = bi.getBytes();
  3. Gunakan pembina String untuk mencipta objek String baharu daripada tatasusunan bait:

    String myString = new String(bytes);

Yang terhasil myString akan menjadi rentetan asal yang telah ditukar kepada perenambelasan.

Atas ialah kandungan terperinci Bagaimana untuk Menukar String kepada Heksadesimal dan Kembali di Jawa?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn