我正在开发蓝牙项目,我正在将文件从一个 android 设备发送到另一个。在服务器端,我确实获得了文件和数据。但是写入文件的数据是字节格式的。我想在文件中写入原始文本。toString()、new String(byte[]) 等方法不起作用。请任何人都可以帮我解决这个问题。我已经尝试了该站点中给出的几乎所有代码,作为此类问题的答案。
提前致谢。
和proper conversion
之间是明确说明您要使用的编码byte[]
。String
如果您以 a 开头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);
}