J'ai besoin de pouvoir copier une partie d'une page HTML affichée dans mon navigateur (FireFox) et de récupérer le code HTML correspondant (avec les balises éventuelles), comme c'est possible dans Writer de LibreOffice (avec le Maj+Ctrl+V). Je réussis bien à récupérer le texte brut mais pas le code HTML. Auriez-vous un lien vers un exemple qui fonctionne?
J'ai essayé ce code:
Mais je n'obtiens qu'un "java.io.ByteArrayInputStream@9b26217", ce qui ressemble à une adresse mais pas au contenu lui-même.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23 private String getHTMLFragment() throws IOException, UnsupportedFlavorException { Clipboard clip = Toolkit.getDefaultToolkit().getSystemClipboard(); Transferable c = clip.getContents(this); if (c == null) { return null; } DataFlavor flv = DataFlavor.selectBestTextFlavor(c.getTransferDataFlavors()); if (!flv.getMimeType().startsWith("text/html")) { return null; } BufferedReader reader = new BufferedReader(flv.getReaderForText(c)); StringBuilder b = new StringBuilder(); int ch; try { while ((ch = reader.read()) != -1) { b.append((char) ch); } reader.close(); } catch (IOException ex) { throw ex; } return b.toString(); }
Merci d'avance.
Partager