在java中如何将全为数字的字符串转化为byte数组?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了在java中如何将全为数字的字符串转化为byte数组?相关的知识,希望对你有一定的参考价值。

例如将String str=”99999“;转化为byte[]数组,byte[0]=9;byte[1]=9等等
谢谢
byte[0]=9;
byte[1]=9;
byte[2]=9;
不是转化为char什么的才是9

public class DigitsString
public static void main(String[] args)
String s="99999";
byte[] bytes=s.getBytes();
for(int i=bytes.length-1;i>=0;i--)
bytes[i]-=(byte)'0';

for(int i=0;i<bytes.length;i++)
System.out.print(bytes[i]);

System.out.println();


一楼二楼的字节数组中元素的值不是对应数位的值,是数位的ASCII码,根本不符合题意
参考技术A public class Du

public static void main(String[] args)

String str = "9999";
str = str.replaceAll("^\\d", "");

byte[] ary = new byte[str.length()];

for(int i = 0; i < str.length(); i++)
ary[i] = (byte)str.charAt(i);
System.out.println((char)ary[i]);



参考技术B public static void main(String[] args)
String str = "123123123";
byte[] b = str.getBytes();
参考技术C byte b[] = str.getBytes();

如何把一个byte数组转化为字符串

工具/原料

C#   IDEA软件   java开发环境   电脑

方法/步骤

1、依次点击“文件--》新建--》项目”。

2、选择为:控制台应用程序。

3、确定后系统生成的代码。

4、测试2代码:把一个byte数组转换为一个字符串。

5、测试2结果byte数组成字符串成功。

参考技术A Java中byte数组转换成string字符串可以直接使用string类的构造函数。而string转byte数组,则可以使用string类型的getBytes()方法进行转换, 参考技术B Java中byte数组转换成string字符串可以直接使用string类的构造函数。而string转byte数组,则可以使用string类型的getBytes()方法进行转换,如下形式:
1、string 转 byte[]
String str = "Hello";//声明一个字符串
byte[] srtbyte = str.getBytes();//使用string类的getBytes方法进行转换
2、byte[] 转 string
byte[] srtbyte;//声明一个byte字节数组
String res = new String(srtbyte);//使用构造函数转换成字符串
System.out.println(res);
也可以将byte转换的时候,设定编码方式相互转换,如下代码:

String str = "hello";
byte[] srtbyte = null;
try
srtbyte = str.getBytes("UTF-8");//设定转换的编码格式
String res = new String(srtbyte,"UTF-8");
System.out.println(res);
catch (UnsupportedEncodingException e) //有可能会出现不能支持的编码格式,捕捉异常。
e.printStackTrace();
本回答被提问者采纳

以上是关于在java中如何将全为数字的字符串转化为byte数组?的主要内容,如果未能解决你的问题,请参考以下文章

如何把一个byte数组转化为字符串

java中如何把一个文件转化为byte数组

java中int转化为bytes[]

在Java中如何将InputStream转成String字符串?

如何把一个byte数组的数字转换成int

c语言 二进制的byte数组转化为int数组