芯烨打印机中文乱码
byte[] data2 = DataForSendToPrinterTSC.text(0, 0, "3", 0, 0, 0, "卢本伟的小店");
byte[] data = byteMerger(byteMerger(byteMerger(byteMerger(data0, data4), data1), data2), data3);
list.add(data);
public static byte[] text(int x, int y, String font, int rotation, int x_multiplication, int y_multiplication, String content) {
String str = "TEXT " + x + "," + y + ",\"" + font + "\"," + rotation + "," + x_multiplication + "," + y_multiplication + ",\"" + content + "\"\r\n";
byte[] data = strTobytes(str);
return data;
}
private static byte[] strTobytes(String str) {
byte[] b = null;
byte[] data = null;
try {
byte[] b = str.getBytes("utf-8");
if (charsetName == null | charsetName == "") {
charsetName = "gbk";
}
data = (new String(b, "utf-8")).getBytes(charsetName);
} catch (UnsupportedEncodingException var4) {
var4.printStackTrace();
}
return data;
}
卢本伟的小店 乱码
各种编码都用过 gb2312 gbk utf-8 机器默认是gbk
怎样才不会乱码
编解码处理一下。
byte[] data2 = DataForSendToPrinterTSC.text(0, 0, "3", 0, 0, 0, URLEncoder.encode("卢本伟的小店", "utf-8"));
byte[] data3 = DataForSendToPrinterTSC.print(1);
byte[] data = byteMerger(byteMerger(byteMerger(byteMerger(data0, data4), data1), data2), data3);
list.add(data);
你好 后面你有解决中文乱码的问题吗? 使用TEXT的方式