【发布时间】:2015-11-06 06:11:36
【问题描述】:
我有字节数组。
可以将byteArray转成String吗?
请检查我的代码
byte[] data = **some_byte_array**
JSONObject jsonObject = new JSONObject(data);
我该如何解决这个问题。
【问题讨论】:
-
你到底想在这里做什么?上传文件?
我有字节数组。
可以将byteArray转成String吗?
请检查我的代码
byte[] data = **some_byte_array**
JSONObject jsonObject = new JSONObject(data);
我该如何解决这个问题。
【问题讨论】:
试试这个
String decoded = new String(bytes, "UTF-8");
有一堆编码可以使用,看Sun javadocs中的Charset类。
byte[] 和 String 之间的“正确转换”是明确说明您要使用的编码。如果您以 byte[] 开头并且它实际上不包含文本数据,则没有“正确的转换”。字符串用于文本,byte[] 用于二进制数据,唯一真正明智的做法是避免在它们之间进行转换,除非万不得已。
【讨论】:
是的,您可以使用这样的字符串构造函数之一将字节数组转换为字符串:
String myString = new String(yourByteArray);
相同的文档: http://docs.oracle.com/javase/7/docs/api/java/lang/String.html#String(byte[])
一切顺利:)
【讨论】: