『壹』 java如何把2進制字元串怎麼轉換成16進制字元串
package image;
public class Bean
{
public static void main ( String[] args )
{
String str = "10101011 10000100 01011011 01111100 00011100 01100010 00010111 10010010";
String[] strs = str.split ("\\s+");
String result = "";
for ( String string : strs )
{
String hex = Integer.toString (Integer.parseInt (string, 2), 16);
result += hex;
}
System.out.println (result);
}
}
『貳』 java怎麼將二進制轉化成字元串
import java.io.UnsupportedEncodingException;
import java.util.Arrays;
/*
* String(byte[] bytes, String charsetName):通過指定的字元集解碼位元組數組
* byte[] getBytes(String charsetName):使用指定的字元集合把字元串編碼為位元組數組
*
* 編碼:把看得懂的變成看不懂的
* String -- byte[]
*
* 解碼:把看不懂的變成看得懂的
* byte[] -- String
*
* 舉例:諜戰片(發電報,接電報)
*
* 碼表:小本子
* 字元 數值
*
* 要發送一段文字:
* 今天晚上在老地方見
*
* 發送端:今 -- 數值 -- 二進制 -- 發出去
* 接收端:接收 -- 二進制 -- 十進制 -- 數值 -- 字元 -- 今
*
* 今天晚上在老地方見
*
* 編碼問題簡單,只要編碼解碼的格式是一致的。
*/
public class StringDemo {
public static void main(String[] args) throws UnsupportedEncodingException {
String s = "你好";
// String -- byte[]
byte[] bys = s.getBytes(); // [-60, -29, -70, -61]
// byte[] bys = s.getBytes("GBK");// [-60, -29, -70, -61]
// byte[] bys = s.getBytes("UTF-8");// [-28, -67, -96, -27, -91, -67]
System.out.println(Arrays.toString(bys));
// byte[] -- String
String ss = new String(bys); // 你好
// String ss = new String(bys, "GBK"); // 你好
// String ss = new String(bys, "UTF-8"); // ???
System.out.println(ss);
}
}
『叄』 java二進制的數字與字元串互轉
現成的方法,多看api
『肆』 Java中,怎麼把二進制的byte數組用流的方法轉換成string字元竄ps:求代碼
既然是轉換成String,自己嘗試著new String 對象,會看到有很多不同的構造方法;比如說這個
System.out.println(new String("Coder.Yan".getBytes()));
『伍』 JAVA怎樣將字元的二進制代碼轉化為字元形式,用什麼語句,求代碼
假設是
byte bytes[].............;
轉字元串就是
String tmp = new String(bytes);
你還可以根據實際情況,指定字元集的
String tmp = new String(bytes, "utf-8");
『陸』 java 如何將二進制數據流轉換成字元串並保存
private static String bytesToString(String filename) {
String myreadline = "";
try {
// 創建FileReader對象,用來讀取字元流
FileReader fr = new FileReader("userinfo.txt");
// 緩沖指定文件的輸入
BufferedReader br = new BufferedReader(fr);
// 定義一個String類型的變數,用來每次讀取一行
while (br.ready()) {
// 讀取一行
myreadline = myreadline + (myreadline.equals("")?"":"\n") + br.readLine();
// 在屏幕上輸出
System.out.println(myreadline);
}
br.close();
fr.close();
} catch (IOException e) {
e.printStackTrace();
}
return myreadline;
}
public static void writerFile(String fileString, String filePath) {
FileWriter fw;
try {
fw = new FileWriter(filePath);
// 將緩沖對文件的輸出
BufferedWriter bw = new BufferedWriter(fw);
bw.write(fileString);
bw.flush();
bw.close();
fw.close();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
public static void main(String[] args) throws FileNotFoundException,
Exception {
// TODO Auto-generated method stub
String fileString = bytesToString("D:/workspace/TestStruts2/userinfo.txt");
writerFile(fileString,"D:/workspace/TestStruts2/test.txt");
}
『柒』 Java 一個文件裡面存儲的是二進制數據 讀取出來以字元串形式展示
不需要轉換。
解釋:任何文件的存儲都是通過二進制的形式進行存儲的,只不過經過機器語言編譯後,展示給用戶的體驗是中文或者是字元串形式。
備註:如果是想將數字轉換為二進制,可以直接通過Integer的toBinaryString方法直接進行轉換,舉例:
int i =8;
System.out.println(Integer.toBinaryString(i));
輸出結果就是:1000.
『捌』 在java中怎麼把位元組數組轉換成二進制字元串
可以使用Integer類的toBinaryString方法,例如:
bytea=0x45;
StringbinStr=Integer.toBinaryString(a).
API中toBinaryString的解釋:
toBinaryString
public static String toBinaryString(inti)
以二進制(基數 2)無符號整數形式返回一個整數參數的字元串表示形式。
如果參數為負,該無符號整數值為參數加上 232;否則等於該參數。將該值轉換為二進制(基數 2)形式的無前導0的 ASCII 數字字元串。如果無符號數的大小為零,則用一個零字元'0'(』u0030』) 表示它;否則,無符號數大小的表示形式中的第一個字元將不是零字元。字元'0'('u0030') 和'1'('u0031') 被用作二進制數字。
參數:
i- 要轉換為字元串的整數。
返回:
用二進制(基數 2)參數表示的無符號整數值的字元串表示形式。
從以下版本開始:
JDK1.0.2
『玖』 java中怎樣把二進制數轉換成對應的字元串
查API呀 String 裡面有方法:構造方法摘要String()
初始化一個新創建的 String 對象,使其表示一個空字元序列。String(byte[] bytes)
通過使用平台的默認字元集解碼指定的 byte 數組,構造一個新的 String。String(byte[] bytes, Charset charset)
通過使用指定的 charset 解碼指定的 byte 數組,構造一個新的 String。String(byte[] ascii, int hibyte)
已過時。 該方法無法將位元組正確地轉換為字元。從 JDK 1.1 開始,完成該轉換的首選方法是使用帶有 Charset、字元集名稱,或使用平台默認字元集的 String 構造方法。String(byte[] bytes, int offset, int length)
通過使用平台的默認字元集解碼指定的 byte 子數組,構造一個新的 String。String(byte[] bytes, int offset, int length, Charset charset)
通過使用指定的 charset 解碼指定的 byte 子數組,構造一個新的 String。String(byte[] ascii, int hibyte, int offset, int count)
已過時。 該方法無法將位元組正確地轉換為字元。從 JDK 1.1 開始,完成該轉換的首選方法是使用帶有 Charset、字元集名稱,或使用平台默認字元集的 String 構造方法。String(byte[] bytes, int offset, int length, String charsetName)
通過使用指定的字元集解碼指定的 byte 子數組,構造一個新的 String。String(byte[] bytes, String charsetName)
通過使用指定的 charset 解碼指定的 byte 數組,構造一個新的 String。String(char[] value)
分配一個新的 String,使其表示字元數組參數中當前包含的字元序列。String(char[] value, int offset, int count)
分配一個新的 String,它包含取自字元數組參數一個子數組的字元。String(int[] codePoints, int offset, int count)
分配一個新的 String,它包含 Unicode 代碼點數組參數一個子數組的字元。String(String original)
初始化一個新創建的 String 對象,使其表示一個與參數相同的字元序列;換句話說,新創建的字元串是該參數字元串的副本。String(StringBuffer buffer)
分配一個新的字元串,它包含字元串緩沖區參數中當前包含的字元序列。String(StringBuilder builder)
分配一個新的字元串,它包含字元串生成器參數中當前包含的字元序列。
『拾』 java如何將8個二進制字元串轉化為對應的字元
StringBuilder sb = new StringBuilder();
for(int a : aa) {
sb.append(a);
}
System.out.println(sb);