Revision as of 18:00, 2 May 2024 by Aunkrig (talk | contribs) (→‎Change Log)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search

A tool to convert HTML documents into plain text.

For example this HTML code

is rendered like this:

For a complete description of the supported HTML inline elements, see here.

For a complete description of the supported HTML block elements, see here.


The goal was to generate the "usage" page that a command line tool usually prints when you invoke it with a "-help" or "--help" option, rather than maintain it manually (e.g. in the form of "println()" statements in the code).

The chosen solution is to put a big DOC comment before the "main()" method, generate an HTML page with JAVADOC, convert that into a plain text file, put it into the application's JAR file and copy its contents to STDOUT when the user want to see it.

The command line version of html2txt itself uses that technique, and you can see the results above.


You can download the latest version of the runnable JAR file here.


Since the tool uses the JRE's built-in XML parser, it supports "numeric character references" (like "ü" for "Ü"), but not "named HTML character entity references" (like "Ü" for "Ü").

For the same reason, the HTML markup in the DOC comments must be "well-formed", i.e. all start tags must be matched by an end tag (like "<li>...</li>"), and void tags must end with a slash, like "<br />".


Command line tool

see here.

ANT task

see here.


see the JAVADOC.

Source Code

see the source code repository.

Change Log

Version 1.0.3, 2018-10-29
  • Added vertical alignment (e.g. "<div align='justify'>").
  • Made the tests robust against the platform-dependent line separators.
  • Cleaned up the MAINDOC generation.
Version 1.0.2, 2016-11-25
  • Modified the text of the copyright notice slightly: Replaced "author" with "copyright holders and contributors".
Version 1.0.1, 2016-11-07
  • Resurrected Java 6 compatibility.


html2txt is published under the "New BSD License".


If you have issues, don't hesitate to submit a ticket.

To discuss in public, check the forum and/or subscribe to it (envelope icon).