请任何人都可以帮我将ascciiText转换为二进制,例如49有二进制00110001,48是00110010等等 这是我的代码
import java.lang.String;
import java.util.Scanner;
import java.lang.*;
import java.io.*;
import java.util.*;
public class encrption {
public static void main(String[] args){
// INPUT: KeyText (StrKey).
// OUTPUT: Ciphertext (ConcatenatedData).
//String ConcatenatedData;
// Read data from user.
Scanner in = new Scanner(System.in);
System.out.println("Enter Your PlainText");
String StrValue = in.nextLine();
System.out.println("Enter Your KeyText ");
String StrKey = in.nextLine();
// Print the Concatenated Data.
String ConcatenatedData = StrKey.concat(StrValue);
System.out.println("the Concatenated Data is :"+ConcatenatedData);
// Convering the Concatenated data to Ascii data.
try {
byte[] asciiText = ConcatenatedData.getBytes("US-ASCII");
System.out.println(Arrays.toString(asciiText));
}
catch (java.io.UnsupportedEncodingException e)
{ e.printStackTrace(); }
请任何人都可以帮我将一系列ascciiText转换为二进制,例如49有二进制00110001,48是00110010等等
Configuration: encrption - JDK version 1.8.0_40
输入您的纯文本 欢迎 输入您的关键字文本 123 连接数据为:123welcome [49、50、51、119、101、108、99、111、109、101]
流程已完成。
最佳答案
类似 @Paul 的解决方案,但以另一种方式编写。
String toBinary(byte b) {
StringBuilder sb = new StringBuilder(8);
for(int i = 7 ; i >= 0 ; i--)
sb.append((char) ('0' + ((b >> i) & 1));
return sb.toString();
}
关于java - 将数组字节转换为二进制,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32627923/