A voir également:
- Imprimer en java
- Jeux java itel - Télécharger - Jeux vidéo
- Waptrick java football - Télécharger - Jeux vidéo
- Imprimer en a5 - Guide
- Journal de naissance gratuit a imprimer - Télécharger - Histoire & Religion
- Waptrick java voiture - Télécharger - Jeux vidéo
1 réponse
Imprimer... Sur papier ?
Tu peux enregistrer ta liste dans un fichier puis l'imprimer avec Desktop.print(File)
La confiance n'exclut pas le contrôle
Tu peux enregistrer ta liste dans un fichier puis l'imprimer avec Desktop.print(File)
La confiance n'exclut pas le contrôle
import java.awt.Desktop; import java.io.File; import java.io.FileNotFoundException; import java.io.FileOutputStream; import java.io.IOException; import java.io.PrintStream; import java.util.Collection; public class MiseEnPage { /** * Imprime une collection d'éléments sur l'imprimante par défaut. * @param <E> le type des éléments de la collection * @param coll la collection d'éléments à imprimer * @param err un flux pour afficher les messages d'erreur * @return true si la demande d'impression est réussie, false sinon */ public static <E> boolean print(Collection<E> coll, PrintStream err) { if (!Desktop.isDesktopSupported()) { display(err, "Desktop not supported"); return false; } if (!Desktop.getDesktop().isSupported(Desktop.Action.PRINT)) { display(err,"Desktop.PRINT not supported"); return false; } File txt; try { txt = File.createTempFile("ToPrint-",".txt"); txt.deleteOnExit(); } catch (IOException e) { display(err,e.getMessage()); return false; } FileOutputStream out; try { out = new FileOutputStream(txt); } catch (FileNotFoundException e) { display(err,e.getMessage()); return false; } try { for (E e : coll) out.write((e.toString()+(char)Character.LINE_SEPARATOR ).getBytes()); out.close(); } catch (IOException e1) { display(err,e1.getMessage()); try { out.close(); } catch (IOException e2) { } return false; } try { Desktop.getDesktop().print(txt); } catch (IOException e) { display(err,e.getMessage()); return false; } return true; } /** * Imprime une collection d'éléments sur l'imprimante par défaut. * @param <E> le type des éléments de la collection * @param coll la collection d'éléments à imprimer * @return true si la demande d'impression est réussie, false sinon */ public static <E> boolean print(Collection<E> coll) { return print(coll,null); } /** * Affiche un message sur un flux. * @param ps le flux d'affichage * @param msg le message à afficher */ private static void display(PrintStream ps,String msg) { if (ps!=null && msg!=null) ps.println(msg); } /** * Imprime la liste des factorielles. */ public static void main(String...args) { // Liste des factorielles Collection<String> coll = new java.util.LinkedList<String>(); for (long n=0, fact=1; fact>0; n++, fact*=n) coll.add(n+"! = "+fact); // Imprime la liste if (print(coll,System.err)) System.out.println("Impression en cours..."); } }