私は、コンピュータに接続されたHP DeskJet1000 USBプリンタでテキストファイルを印刷するために、以下のJavaコードを使用しています。このコードを実行すると、印刷ジョブが送信されますが、プリンタは何も印刷しません。ステータスは、プリンタが印刷中であることを示していますが、ページを取り込むことさえありません。助けてください!私のコードは次のとおりです:Java印刷コードが動作しない
package printing;
import java.io.FileInputStream;
import javax.print.*;
import javax.print.attribute.HashPrintRequestAttributeSet;
import javax.print.attribute.PrintRequestAttributeSet;
/** @author Majid */
public class Printing {
public static void main (String [] args) {
// TODO code application logic here
DocFlavor flavor = DocFlavor.INPUT_STREAM.AUTOSENSE;
PrintRequestAttributeSet aset = new HashPrintRequestAttributeSet();
/* locate a print service that can handle it */
PrintService [] pservices = PrintServiceLookup.lookupPrintServices (flavor, aset);
/* create a print job for the chosen service */
int printnbr = 0;
DocPrintJob pj = pservices [printnbr].createPrintJob();
try {
FileInputStream fis = new FileInputStream ("e:/fypdatabase/test.txt");
Doc doc = new SimpleDoc (fis, flavor, null);
//PrintJobWatcher pjDone = new PrintJobWatcher (pj);
/* print the doc as specified */
pj.print (doc, aset);
}
catch (Exception ex) {
ex.printStackTrace();
}
}
}
は、他のプリンタの作業を行いますアプリケーション(Wordやメモ帳など)? – Jeffrey
はい、他のすべてのアプリケーションから完全に印刷されます。 –
返される印刷サービスの数を確認しないで、インデックス0を使用するハードコードを使用するだけですか? (例えば擬似プリンタがインストールされているかどうか疑問に思っています) – Benj