黑马程序员技术交流社区
标题:
java 字节转换字符串问题
[打印本页]
作者:
★忙碌★
时间:
2013-8-31 07:51
标题:
java 字节转换字符串问题
本帖最后由 ★忙碌★ 于 2013-8-31 14:34 编辑
java中,如何将一个字节数组转换成字符串
作者:
第一印象
时间:
2013-8-31 08:41
字节转换成字符串肯定只有字符串知道怎么转,所以需要到字符串的类中找答案,查阅API可以发现,在构造字符串的时候就提供了方法:new String(需要转换的字节数组,编码格式);
以下是一个字符串跟字节数据之间的转换小Demo:
import java.io.UnsupportedEncodingException;
public class TestDemo {
public static void main(String[] args) throws UnsupportedEncodingException{
//定义字符串
String str1 = "张三";
//定义字节数组接受字符串转换后的自借宿据
byte[] buf = str1.getBytes("UTF-8");
//打印查看一下被转成字节的字符串到底是个什么东东
for(int x=0; x<buf.length; x++){
if(x==buf.length-1){
System.out.println(buf[x]);
}
else{
System.out.print(buf[x]+",");
}
}
//将字节数组中的数据转回字符串
String str2 = new String(buf,"UTF-8");
System.out.println("str2="+str2);
}
}
复制代码
作者:
xiangzi2008006
时间:
2013-8-31 08:41
比如你定义的字节数组是byte[] buf = new byte[1024];实际存储的长度是len。
直接调用String的构造方法,里面有3个参数是字节数组、字节数组起始位置、字节数组存储的字节实际长度
String str = new String(buf,0,len);
作者:
itachi
时间:
2013-8-31 09:35
用String的构造方法
String(byte[] bytes, int offset, int length)
通过使用平台的默认字符集解码指定的 byte 子数组,构造一个新的 String。
这种东西查一下API文档好了
作者:
薛鹏鹏
时间:
2013-8-31 14:20
如果您的问题已经解决
请更改分类未解决为已解决
保持队形,谢谢合作
详情参考
如何修改分类
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2