Problema com manipulação de arquivo após copiar ele para JTextPane usando BufferedReader

2 respostas
D

Por algum motivo, ao abrir o arquivo utilizando FileReader e BufferedReader para colocar o código no JTextPane, a manipulação no texto não ocorre, qualquer modificação nele não acontece, diferente de quando eu coloco o texto manualmente no JTextPane, alguém saberia me dizer porque isso ocorre e como corrigir?

Segue o método que eu estou usando para abrir o arquivo.
JFileChooser fc = new JFileChooser();
        fc.setMultiSelectionEnabled(true);
        fc.setDialogType(JFileChooser.OPEN_DIALOG);
        fc.setDialogTitle("Abrir Arquivo");
        int returnVal = fc.showDialog(this,null);
        if (returnVal == JFileChooser.APPROVE_OPTION){
            file = fc.getSelectedFiles();
            try {
                System.out.println(file.length);
                String texto = "";
                //tx_Code.setText(texto);
                for (int i = 0; i < file.length;i++){
                leitor = new FileReader(file[i]);
                
                
                BufferLeitor = new BufferedReader(leitor);
                try {
                    
                    if ((texto = BufferLeitor.readLine()) != null){
                        //jTCodigo.setText(texto);
                        while((texto = BufferLeitor.readLine()) != null){
                            tx_Code.setText(tx_Code.getText() + "\n" + texto);
                        }
                    }     
                } catch (IOException ex) {
                    Logger.getLogger(JanelaPrincipal.class.getName()).log(Level.SEVERE, null, ex);
                }
                }
            } catch (FileNotFoundException ex) {
                Logger.getLogger(JanelaPrincipal.class.getName()).log(Level.SEVERE, null, ex);
            }
        }

2 Respostas

D

Ninguém sabe como solucionar isso?

T

te dar uma dica use StringBuilder coloque tudo dentro dela, feche o fileReader e o BufferReader, ai depois vc coloca sua StringBuilder dentro no seu tx_Code();

vc pode usar String no lugar de StringBuilder mas dependendo do tamanho do arquivo q vc ta usando vc vai ter perda de perfomace.

vlw

Criado 29 de julho de 2011
Ultima resposta 2 de ago. de 2011
Respostas 2
Participantes 2