Texto rtf em uma string

3 respostas
cubas

Pessoal.
Consegui este código que pega um conteúdo de jTextpanel e gera um arquivo rtf para o disco. mas o que eu queria é pegar este conteúdo e colocar em uma variável para salvar o texto no meu banco de dados.
Alguém sabe como devo fazer isto ?
Valeu

public exportRtf(JEditorPane textPane , File file)
	{ 
        javax.swing.text.DefaultEditorKit textKit;
        javax.swing.text.rtf.RTFEditorKit rtfKit;
        javax.swing.text.html.HTMLEditorKit htmlKit;
        
		try
		{
			java.io.OutputStream fos = new java.io.BufferedOutputStream(new java.io.FileOutputStream(file));
			java.io.BufferedWriter bw = new java.io.BufferedWriter(new java.io.OutputStreamWriter(fos));
	        
	        javax.swing.text.Document doc = textPane.getDocument();
	        int docSize = doc.getLength();
	        
	        rtfKit = new javax.swing.text.rtf.RTFEditorKit();
	        rtfKit.write(fos, doc, 0, docSize);
	        

	        fos.flush();
	        fos.close();
	        rtfKit = null;
		}            
		catch (javax.swing.text.BadLocationException exp){
		// logger.warning("couldnt write file at "+file.toString());
	 	}
	 	catch (java.io.IOException exp){
	   //  logger.warning("couldnt write file at "+file.toString());
	 	} 
    }

3 Respostas

Betinhum

Vc já tentou o método getText() da Classe JEditorPane?

cubas

Já tentei usar estes métodos o qual seria mais óbvio mas creio que estou fazendo alguma coisa errada pois o que retorna é apenas o texto plano sem nenhuma formatação.
Como seria o uso deste método para pegar o texto com as tags de rtf ?

valeu

Carlos cubas

carlosmcp

Bom, uma solução seria salvar o próprio arquivo no banco de dados. Assim, se o teu banco for Oracle, por exemplo, use uma coluna BLOG para salvar o arquivo. Desta forma, toda a formatação anterior ou qualquer modificação proveniente do JEditoPane acompanhará o novo arquivo.

T+

Criado 3 de fevereiro de 2005
Ultima resposta 3 de set. de 2008
Respostas 3
Participantes 3