Я создаю приложение, которое использует фискальный принтер, и документ, который я отправляю на принтер, должен быть на кириллице. Проблема в том, что один конкретный символ (один для тарифной группы, потому что я пытаюсь распечатать квитанцию) должен быть (char)192
, но каким-то образом в процессе изменяется на некоторый случайный символ. Я попытался изменить кодировку проекта на UTF-8 в Project> Properties> Resource> Кодировка текстового файла, но ничего не изменилось. Я также попытался изменить кодировку в Window> Preferences> General> Workspace> Text file encoding на UTF-8 и до сих пор ничего.
Примечание: когда я печатаю документ вручную на других машинах, а затем отправляю его на фискальный принтер, он работает нормально (но не на моем компьютере, хотя). Я использую блокнот для редактирования файла, тип выходного файла .in.
Вот код
if(result==JOptionPane.YES_OPTION){
try {
PrintWriter writer;
writer = new PrintWriter("PF500.in");
String line1 = " 01,0000,1";
writer.println(line1);
String etq = "#1";
String line2 = null;
String tarifa = null;
for(Artikli art : list){
switch(etq){
case "#1": etq = "$1";
break;
default: etq = "#1";
}
switch(art.tarifa){
case "0801": tarifa = Character.toString((char)192);
break;
case "0701": tarifa = Character.toString((char)193);
break;
case "0601": tarifa = Character.toString((char)194);
break;
}
line2 = etq + art.name.trim() + Character.toString((char)9) + tarifa + art.cena + "*" + art.kolicina;
writer.println(line2);
}
writer.println("%5" + Character.toString((char)9) + "P" + String.valueOf(total));
writer.println("#" + Character.toString((char)56));
writer.close();
} catch (FileNotFoundException e1) {
e1.printStackTrace();
}
con.clearSmetka(id);
con.insertIzvestaj(list, den.date, id, user.name, time, popust);
dtm1.setRowCount(0);
smetkaTable.setModel(dtm1);
btnCloseSmetka.setEnabled(false);
btn.setBackground(new Color(0, 128, 128));
btn.setText("Маса " + String.valueOf(id));
smetkaTxt.setText("0,00");
workFrame.dispose();
}
Все отлично работает, кроме символа для тарифной группы (который (char) 192)