我有一个字符串,我有与字节数组来连接,所以我尝试这个字符串和字节数组级联
String msg = "msg to show";
byte[] msgByte = new byte[msg.length()];
try {
msgByte = msg.getBytes("UTF-8");
} catch (UnsupportedEncodingException e) {
e.printStackTrace();
}
byte[] command = {2,5,1,5}
byte[] c = new byte[msgByte.length + command.length];
System.arraycopy(command, 0, c, 0, command.length);
System.arraycopy(msjByte, 0, c, command.length, msjByte.length);
for(Byte bt:c)
System.out.println(bt+"");
这是输出:
2 5 1 5 109 115 103 32 ... ...
但是我正在寻找的结果是这样的
2 5 1 5味精...
我需要在一个阵列中的原因,而是作为一个蓝牙打印机的命令。
有没有办法,有什么建议?
在此先感谢! :)
你有正确的结果。 ascii(109)= m。这是一个相当低级别的界面,混合命令代码和字符串? –
我的错误,我以为我错过了数组中的ASCII码,因为打印机的示例命令来这样的事情:byte [] ESC_Z2 = {0x1b,0x5a,0x00,0x51,0x05,0x14,0x00, '信息' };所以我试着发送纯粹的ASCII代码,但它不起作用,但它是由于命令 –