我在服务器linux ubuntu中的程序和我在Windows中的打印机
我想从链接中打印数据并在Windows中打印
我尝试用以下方式打印:
SMB:\\\\Ip printer\\Name printer
但这不起作用
有解决方案吗?
我的代码是:
string1="test";
InputStream br = new ByteArrayInputStream(test.getBytes());
BufferedReader in = new BufferedReader(new InputStreamReader(br));
String line;
FileWriter out = new FileWriter("SMB:\\\\IP printer\\name printer");
while((line = in.readLine()) != null)
{
System.out.println("line"+line);
out.write(line);
out.write(0x0D); CR
out.write('\n');
writer.println(line);
}
out.close();
in.close();
我的打印机是EPSON TM-U295
最佳答案
您应该使用PrinterJob
这就是Java为此类情况提供的API。
这是一个小代码片段,可以帮助您入门:
PrinterJob printerJob = PrinterJob.getPrinterJob();
printerJob.setPrintable(new CustomPrintable("DATA TO PRINT"));
boolean printOK = printerJob.printDialog();
if (printOK){}
try {
printerJob.print();
}
catch (PrinterException e){
// Error
}
}
我刚刚意识到我忘了提到如何连接到打印机,这是一个有用的link