无法将字节数组转换为原始文本

时间:2013-10-01 07:07:30

标签: android bluetooth

我正在开发蓝牙项目,我将文件从一个Android设备发送到另一个。在服务器端,我得到文件和数据。但写入文件的数据是以字节格式。我想在文件中写原文。像toString(),new String(byte [])等方法不起作用。请任何人都可以帮助我。我已经尝试了本网站提供的几乎所有代码,作为回答这些问题。

提前致谢。

1 个答案:

答案 0 :(得分:0)

proper conversionbyte[]之间的String是明确说明您要使用的编码。如果您从byte[]开始并且实际上不包含文本数据,则没有正确的转换。 Strings用于文本,byte[]用于二进制数据,唯一真正明智的做法是避免在它们之间进行转换,除非你绝对必须这样做。

将bytearray转换为String的最佳方法是

public void convertByteArrayToString(Charset encoding) {

    byte[] byteArray = new byte[] {10, 20, 30, 40, 50, 60};

    String value = new String(byteArray, encoding);

    System.out.println(value);
}