Question

existe-t-il un moyen simple de transformer du HTML en markdown avec JAVA ?

J'utilise actuellement Java DémarquageJ bibliothèque pour transformer le markdown en HTML.

import com.petebevin.markdown.MarkdownProcessor;
...
public static String getHTML(String markdown) {
    MarkdownProcessor markdown_processor = new MarkdownProcessor();
    return markdown_processor.markdown(markdown);
}

public static String getMarkdown(String html) {
/* TODO Ask stackoverflow */
}
Était-ce utile?

La solution

Utilisez ceci XSLT.

Si vous avez besoin d'aide pour utiliser XSLT et Java, voici un extrait de code :

public static void main(String[] args) throws Exception {

        File xsltFile = new File("mardownXSLT.xslt");

        Source xmlSource = new StreamSource(new StringReader(theHTML));
        Source xsltSource = new StreamSource(xsltFile);

        TransformerFactory transFact =
                TransformerFactory.newInstance();
        Transformer trans = transFact.newTransformer(xsltSource);

        StringWriter result = new StringWriter();
        trans.transform(xmlSource, new StreamResult(result));
    }

Autres conseils

Je suis tombé sur la remarque pour convertir HTML à Markdown See: http://remark.overzealous.com/manual/index.htmlCela dépend de JSoup, une puissante bibliothèque Java permettant de travailler avec du HTML réel.

Je travaille sur le même problème et j'expérimente quelques techniques différentes.

La réponse ci-dessus pourrait fonctionner.Vous pourriez utiliser le bibliothèque jTidy pour effectuer le travail de nettoyage initial et convertir du HTML en XHTML.Vous utilisez le Feuille de style XSLT lié ci-dessus.

Malheureusement, il n'existe pas de bibliothèque dotée d'une fonction unique pour ce faire en Java.Vous pouvez essayer d'utiliser le script Python html2texte avec Jython, mais je n'ai pas encore essayé ça !

si vous utilisez l'éditeur WMD et souhaitez obtenir le code de démarque côté serveur, utilisez simplement ces options avant de charger le wmd.js scénario:

wmd_options = {
        // format sent to the server.  can also be "HTML"
        output: "Markdown",

        // line wrapping length for lists, blockquotes, etc.
        lineLength: 40,

        // toolbar buttons.  Undo and redo get appended automatically.
        buttons: "bold italic | link blockquote code image | ol ul heading hr",

        // option to automatically add WMD to the first textarea found.
        autostart: true
    };
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top