Fórum Manipulação de Arquivo txt em java #528363
11/08/2015
0
Ola pessoal, bom dia, sou novo aqui no fórum e em java também.
Estou lendo um arquivo txt e preciso sob-escrever uma determinada linha que ja contém dados escritos, mais só consigo escrever na ultima linha do arquivo ao invés de sob-escrever.
Segue abaixo meu código completo, o método se chama alterar()
public class Principal extends javax.swing.JFrame {
private File arquivos;
String retorno;
public Principal() {
initComponents();
}
private void buscarArquivo(){
arquivos = null;
JFileChooser fc = new JFileChooser();
fc.setDialogTitle(" ");
fc.setDialogType(JFileChooser.OPEN_DIALOG);
fc.setApproveButtonText("OK");
//fc.setFileSelectionMode(JFileChooser.SAVE_DIALOG);
int resultado = fc.showOpenDialog(fc);
if (resultado == JFileChooser.CANCEL_OPTION) {
fc.hide();
}
arquivos = fc.getSelectedFile();
if (arquivos != null) {
tfCaminhoArq.setText(String.valueOf(arquivos).trim());
tfCaminhoSalvar.setText(tfCaminhoArq.getText());
}
try{
FileReader arq = new FileReader(arquivos);
BufferedReader lerArq = new BufferedReader(arq);
String linha[], s;
s = lerArq.readLine();
tfPJAtual.setText(s.substring(18, 32));
tfNomeAtual.setText(s.substring(72,102));
}
catch(Exception e){
}
}
private void SalvarArquivo(){
File arquivos = null;
JFileChooser fc = new JFileChooser();
fc.setDialogTitle(" ");
fc.setDialogType(JFileChooser.OPEN_DIALOG);
fc.setApproveButtonText("ok");
fc.setFileSelectionMode(JFileChooser.SAVE_DIALOG);
int resultado = fc.showOpenDialog(fc);
if(resultado == JFileChooser.CANCEL_OPTION);
fc.hide();
arquivos = fc.getSelectedFile();
if(arquivos != null){
tfCaminhoSalvar.setText(String.valueOf(arquivos).trim());
}
}
public void alterar(){
try{
FileWriter fw = new FileWriter(arquivos,true);
BufferedWriter bw = new BufferedWriter(fw);
bw.write(tfPJEnvio.getText().);
bw.close();
fw.close();
}
catch(Exception e){
System.out.println("erro"+e);
}
}
Estou lendo um arquivo txt e preciso sob-escrever uma determinada linha que ja contém dados escritos, mais só consigo escrever na ultima linha do arquivo ao invés de sob-escrever.
Segue abaixo meu código completo, o método se chama alterar()
public class Principal extends javax.swing.JFrame {
private File arquivos;
String retorno;
public Principal() {
initComponents();
}
private void buscarArquivo(){
arquivos = null;
JFileChooser fc = new JFileChooser();
fc.setDialogTitle(" ");
fc.setDialogType(JFileChooser.OPEN_DIALOG);
fc.setApproveButtonText("OK");
//fc.setFileSelectionMode(JFileChooser.SAVE_DIALOG);
int resultado = fc.showOpenDialog(fc);
if (resultado == JFileChooser.CANCEL_OPTION) {
fc.hide();
}
arquivos = fc.getSelectedFile();
if (arquivos != null) {
tfCaminhoArq.setText(String.valueOf(arquivos).trim());
tfCaminhoSalvar.setText(tfCaminhoArq.getText());
}
try{
FileReader arq = new FileReader(arquivos);
BufferedReader lerArq = new BufferedReader(arq);
String linha[], s;
s = lerArq.readLine();
tfPJAtual.setText(s.substring(18, 32));
tfNomeAtual.setText(s.substring(72,102));
}
catch(Exception e){
}
}
private void SalvarArquivo(){
File arquivos = null;
JFileChooser fc = new JFileChooser();
fc.setDialogTitle(" ");
fc.setDialogType(JFileChooser.OPEN_DIALOG);
fc.setApproveButtonText("ok");
fc.setFileSelectionMode(JFileChooser.SAVE_DIALOG);
int resultado = fc.showOpenDialog(fc);
if(resultado == JFileChooser.CANCEL_OPTION);
fc.hide();
arquivos = fc.getSelectedFile();
if(arquivos != null){
tfCaminhoSalvar.setText(String.valueOf(arquivos).trim());
}
}
public void alterar(){
try{
FileWriter fw = new FileWriter(arquivos,true);
BufferedWriter bw = new BufferedWriter(fw);
bw.write(tfPJEnvio.getText().);
bw.close();
fw.close();
}
catch(Exception e){
System.out.println("erro"+e);
}
}
Flavio Nascimento
Curtir tópico
+ 0
Responder
Posts
11/08/2015
Jothaz
Quando posta código use a tag "</>" do ícone acima.
Use append:
Use append:
Writer arquivo = new BufferedWriter(new FileWriter("arquivo", true));
arquivo.append("Mais conteudo");
arquivo.close();
Responder
Gostei + 0
11/08/2015
Flavio Nascimento
Preciso alterar duas linhas de um arquivo txt, com esse método consigo escrever no txt só que só em uma linha nova e ja no final do arquivo.
public void alterar(){
try{
FileWriter fw = new FileWriter(arquivos,true);
BufferedWriter bw = new BufferedWriter(fw);
bw.write(tfPJEnvio.getText().);
bw.close();
fw.close();
}
catch(Exception e){
System.out.println("erro"+e);
}
Responder
Gostei + 0
Clique aqui para fazer login e interagir na Comunidade :)