RTF a texto sin formato en Java

¿Cómo se convierte una cadena RTF en texto sin formato en Java? La respuesta obvia es usar el RTFEditorKit de Swing, y esa parece ser la respuesta común en Internet. Sin embargo, el método de escritura que dice devolver texto sin formato no está realmente implementado ... está codificado para lanzar una IOException en Java6.

Respuesta 1

Uso el RTFEditorKit de Swing en Java 6 así:

RTFEditorKit rtfParser = new RTFEditorKit();
Document document = rtfParser.createDefaultDocument();
rtfParser.read(new ByteArrayInputStream(rtfBytes), document, 0);
String text = document.getText(0, document.getLength());

Y eso está funcionando.

Respuesta: 2

Pruebe Apache Tika: http://tika.apache.org/0.9/formats.html#Rich_Text_Format

Respuesta: 3

Puede considerar RTF Parser Kit como una alternativa ligera al Swing RTFEditorKit. La siguiente línea muestra la extracción de texto sin formato de un archivo RTF. El archivo RTF se lee de la secuencia de entrada, el texto extraído se escribe en la secuencia de salida.

new StreamTextConverter().convert(new RtfStreamSource(inputStream), outputStream, "UTF-8");

(divulgación completa: soy el autor del kit RTF Parser)

Respuesta: 4

Estoy tratando de agregar una matriz entera en Set de la siguiente manera, int [] arr = {2, 6, 4, 2, 3, 3, 1, 7}; Set <Integer> set = new HashSet <Integer> (Arrays.asList (arr)); Estoy recibiendo un error ...

Acabo de comenzar a usar el selenio webdriver para crear pruebas para sitios web que completan formularios haciendo clic en botones, etc. ¿Para qué más se puede usar Selenium? ¿Es este el propósito principal para ...

Estaba jugando con JavaScript y me quedé atascado con un programa simple. Declaré una matriz en JavaScript como var a = [0, 1, 2]; Entonces, como no hay un tamaño fijo para una matriz en JavaScript ...

Realmente no pude encontrar las palabras sobre cómo describir mi pregunta en el título. Lo que intento lograr es algo como esto: (Pseudocódigo) SuperClass [] superArray = new SuperClass []; ...