导航:首页 > 编程语言 > java字符串转换二进制

java字符串转换二进制

发布时间:2022-10-30 18:47:42

java怎样把字符串转化为二进制形式

可以调用String类的一个方法 getBytes();该方法返回一个 byte[]

⑵ 利用java,怎么把二进制字符串转化为相应的二进制数组

java.lang.Integer这个API包中有进制转换的函数
public static String toBinaryString(int i)
public static String toHexString(int i)
public static String toOctalString(int i)
这3个函数都可以将十进制的整数转换成二、一六、八进制数
不过转换后的结果都是字符串的形式

⑶ java中怎样将字符串转换成二进制


java.lang.Integer这个API包中有进制转换的函数
public static String toBinaryString(int i)
public static String toHexString(int i)
public static String toOctalString(int i)
这3个函数都可以将十进制的整数转换成二、一六、八进制数
不过转换后的结果都是字符串的形式

既然得到的是字符串
我想你当然就可以利用string.sub(x-1,x)的方法来判断该x位的数等于0还是1
之后再把x返回出来,那么就知道结果了

⑷ java 16进制字符串转为二进制bit数组

应该用byte型数组
public static String stringToHexString(String strPart) {
String hexString = "";
for (int i = 0; i < strPart.length(); i++) {
int ch = (int) strPart.charAt(i);
String strHex = Integer.toHexString(ch);
hexString = hexString + strHex;
}
return hexString;
}

private static String hexString="0123456789ABCDEF";
/*
* 将字符串编码成16进制数字,适用于所有字符(包括中文)
*/
public static String encode(String str)
{
// 根据默认编码获取字节数组
byte[] bytes=str.getBytes();
StringBuilder sb=new StringBuilder(bytes.length*2);
// 将字节数组中每个字节拆解成2位16进制整数
for(int i=0;i<bytes.length;i++)
{
sb.append(hexString.charAt((bytes[i]&0xf0)>>4));
sb.append(hexString.charAt((bytes[i]&0x0f)>>0));
}
return sb.toString();
}

/*
* 将16进制数字解码成字符串,适用于所有字符(包括中文)
*/
public static String decode(String bytes)
{
ByteArrayOutputStream baos=new ByteArrayOutputStream(bytes.length()/2);
// 将每2位16进制整数组装成一个字节
for(int i=0;i<bytes.length();i+=2)
baos.write((hexString.indexOf(bytes.charAt(i))<<4 |hexString.indexOf(bytes.charAt(i+1))));
return new String(baos.toByteArray());
}

private static byte uniteBytes(byte src0, byte src1) {
byte _b0 = Byte.decode("0x" + new String(new byte[] {src0})).byteValue();
_b0 = (byte) (_b0 << 4);
byte _b1 = Byte.decode("0x" + new String(new byte[] {src1})).byteValue();
byte ret = (byte) (_b0 | _b1);
return ret;

public static byte[] HexString2Bytes(String src)
{
byte[] ret = new byte[6];
byte[] tmp = src.getBytes();
for(int i=0; i<6; ++i )
{
ret[i] = uniteBytes(tmp[i*2], tmp[i*2+1]);
}
return ret;
}

⑸ java 如何将String转换为2进制流通过Socket发送到服务器,最好附上代码。

public
static
void
main(String[]
args)
{
//
信息
String
msg
=
"abcdefg";
try
{
//
连接到具体的地址跟端口号
Socket
socket
=
new
Socket("www.xxx.com",
8080);
//
获得输出流并写入数据
OutputStream
out
=
socket.getOutputStream();
out.write(msg.getBytes());
out.flush();
out.close();
}
catch
(UnknownHostException
e)
{
e.printStackTrace();
}
catch
(IOException
e)
{
e.printStackTrace();
}
}

⑹ java怎样把字符串转化为二进制形式

importjava.io.UnsupportedEncodingException;
importjava.util.Arrays;

/*
*String(byte[]bytes,StringcharsetName):通过指定的字符集解码字节数组
*byte[]getBytes(StringcharsetName):使用指定的字符集合把字符串编码为字节数组
*
*编码:把看得懂的变成看不懂的
*String--byte[]
*
*解码:把看不懂的变成看得懂的
*byte[]--String
*
*举例:谍战片(发电报,接电报)
*
*码表:小本子
* 字符 数值
*
*要发送一段文字:
* 今天晚上在老地方见
*
* 发送端:今--数值--二进制--发出去
* 接收端:接收--二进制--十进制--数值--字符--今
*
* 今天晚上在老地方见
*
*编码问题简单,只要编码解码的格式是一致的。
*/
publicclassStringDemo{
publicstaticvoidmain(String[]args){
Strings="你好";

//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
Stringss=newString(bys);//你好
//Stringss=newString(bys,"GBK");//你好
//Stringss=newString(bys,"UTF-8");//???
System.out.println(ss);
}
}

⑺ java有什么api可以将字符串直接转换成相应二进制数

public class Test01 {
public static void main(String[] args) {

//比如我现在要转这个字符串
String str = "Hello World";

//先把他变为字符数组
char[] chs = str.toCharArray();

//然后通过integer中的toBinaryString方法来一个一个转

for (int i = 0; i < chs.length; i++) {
System.out.print(Integer.toBinaryString(chs[i]));
}

}
}

100100

⑻ java中如何将字符串转换为二进制数

java.lang.Integer这个API包中有进制转换的函数
public static String toBinaryString(int i)
public static String toHexString(int i)
public static String toOctalString(int i)
这3个函数都可以将十进制的整数转换成二、一六、八进制数
不过转换后的结果都是字符串的形式

⑼ java二进制的数字与字符串互转

现成的方法,多看api

⑽ 在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字符串转换二进制相关的资料

热点内容
程序员求助国企 浏览:833
云服务器网址租用多少钱 浏览:942
行车记录仪安卓版怎么用 浏览:500
java是不是数字 浏览:182
php模拟浏览器环境 浏览:353
编程谁都能学会吗 浏览:407
使用国家反诈app都要开启什么 浏览:712
下载民宿APP有什么用 浏览:52
续子语pdf 浏览:385
2021年加密货币最新行情 浏览:162
nfs怎么加密ipsec 浏览:245
国二考试调用编译器运算选择题 浏览:750
同济大学高等数学pdf 浏览:234
延时的宏命令怎么设置 浏览:596
数据库有哪些加密 浏览:209
改之理反编译注册教程 浏览:391
什么是编译程序和翻译程序 浏览:208
python课程心得总结 浏览:17
派派中怎么看对方在哪个服务器 浏览:796
xp配置java环境变量配置 浏览:9