Я работаю над приложением, которое нужно печатать непосредственно на принтере ESC/POS. Печать прекрасна, однако при выдаче команд принтеру они просто распечатываются! Я пытаюсь преобразовать некоторые C# код и команды я пытаюсь отправить в шестнадцатеричные строки следующим образом:Отправить команду hex на ESC/POS-принтер Android
public static String PRINTLOGOCOMPANY = "\x1c\x70\x01\x30";
Конечно, я понимаю, что есть недопустимые символы побег в этом, поэтому я изменил его:
"\\x1c\\x70\\x01\\x30"
я затем преобразуется в массив байтов и попытался отправить его через поток DataOutput так:
String WIDTH_1 ="\\x1d\\x57\\x120\\x01";
Log.i("Width String: ", WIDTH_1);
final byte [] width = WIDTH_1.getBytes();
final int portNo = xxxx;
final String ipAddress = "xxx.xxx.x.xxx";
Thread thread = new Thread() {
@Override
public void run() {
try {
Socket sock = new Socket(ipAddress, portNo);
DataOutputStream dOut = new DataOutputStream(sock.getOutputStream());
dOut.writeInt(width.length);
dOut.write(width);
dOut.close();
sock.close();
} catch (UnknownHostException e) {
e.printStackTrace();
Log.i("Unknown Host Exception Error: ", String.valueOf(e));
} catch (IOException e) {
e.printStackTrace();
Log.i("IO Exception Error: ", String.valueOf(e));
}
}
};
thread.start(
, но он просто печатает его на другом конце;
Может ли кто-нибудь предложить какие-либо советы по этому вопросу, очень ценю это.
никто не имеет информации по этой теме? вытягивая мои волосы здесь –