Read a txt file already saved in another Activity

0

I need to read a text file already written to another Activity .

I made it read in the same Activity and it works fine, but when I try to pull in another Activity , it locks the app, how do I solve it?

I also wanted to know if I can save TextView faces next to this file or another one? I did not find anything about it.

File recording screen, here it is writing and reading normally.

package com.example.dfabr.primeiroprograma;

import android.content.Intent;
import android.os.Bundle;
import android.support.v7.app.AppCompatActivity;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
import android.widget.TextView;
import android.widget.Toast;

import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;

public class telaTexto extends AppCompatActivity {
    public TextView arqTxt;

    public EditText txtDigitado;
    public EditText nomeArqTxt;
    private Button btnSalvarTxt;
    private Button btnLer;
    private Button btnExcluir;
    public  TextView conteudoArquivo;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_tela_texto);

        txtDigitado = (EditText) findViewById(R.id.txtDigitado);
        nomeArqTxt = (EditText) findViewById(R.id.nomeArqTxt);
        btnSalvarTxt = (Button) findViewById(R.id.btnSalvarTxt);
        btnLer = (Button) findViewById(R.id.btnLer1);
        btnExcluir = (Button) findViewById(R.id.btnExcluir);
        conteudoArquivo = (TextView) findViewById(R.id.conteudoArquivo);

        btnSalvarTxt.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                try  {
                    EditText nomeArquivo = (EditText) findViewById(R.id.nomeArqTxt);
                    EditText txtDigitado = (EditText) findViewById(R.id.txtDigitado);
                    FileOutputStream gravarTexto = openFileOutput(nomeArqTxt.getText().toString(), MODE_PRIVATE);
                    String conteudoTxt = txtDigitado.getText().toString();
                    gravarTexto.write(conteudoTxt.getBytes());
                    gravarTexto.close();
                } catch (FileNotFoundException e) {
                    e.printStackTrace();
                } catch (IOException e) {
                    e.printStackTrace();
                }
                Toast.makeText(telaTexto.this, "Arquivo Gravado Com Sucesso", Toast.LENGTH_LONG).show();
                Intent intent = new Intent(telaTexto.this, MainActivity.class);
                startActivity(intent);
            }
        });

        btnLer.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                try  {
                    EditText nomeArquivo = (EditText) findViewById(R.id.nomeArqTxt);
                    EditText txtDigitado = (EditText) findViewById(R.id.txtDigitado);
                    TextView conteudoArquivo = (TextView)findViewById(R.id.conteudoArquivo);

                    File arquivoRecuperado = getFileStreamPath(nomeArquivo.getText().toString());
                    if (arquivoRecuperado.exists()) {
                        FileInputStream arqRacuperado = openFileInput(nomeArqTxt.getText().toString());
                        int tamanhoArquivo = arqRacuperado.available();
                        byte dadosBytesLidos[] = new byte[tamanhoArquivo];
                        arqRacuperado.read(dadosBytesLidos);
                        String txtLido = new String(dadosBytesLidos);
                        txtDigitado.setText(txtLido);
                        }else {
                        Toast.makeText(telaTexto.this, "Arquivo não encontrado", Toast.LENGTH_LONG).show();
                        }
                        } catch (FileNotFoundException e) {
                         e.printStackTrace();
                } catch (IOException e) {
                    e.printStackTrace();
                }    
            }
        });

        /*btnExcluir.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {

                EditText nomeArquivo = (EditText)findViewById(R.id.nomeArqTxt);
                boolean exclusao = deleteFile(nomeArqTxt.getText().toString());
                if(exclusao)
                    Toast.makeText(telaTexto.this, "Arquivo excluido com sucesso", Toast.LENGTH_LONG).show();
                 else
                    Toast.makeText(telaTexto.this, "Arquivo não encontrado para exclusão", Toast.LENGTH_LONG).show();
            }
        });*/
    }
}

This is where I should open txt, tell me when it does not have the file, but when it has the app hangs.

package com.example.dfabr.primeiroprograma;

import android.os.Bundle;
import android.support.v7.app.AppCompatActivity;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
import android.widget.TextView;
import android.widget.Toast;

import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.IOException;

public class ler_Arquivo extends AppCompatActivity {    
    public EditText nomeArqTxt;
    private Button btnLer1;
    public EditText txtDigitado;
    public  TextView conteudoArquivo;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_ler__arquivo);

        nomeArqTxt = (EditText) findViewById(R.id.nomeArqTxt);
        conteudoArquivo = (TextView) findViewById(R.id.conteudoArquivo);
        btnLer1 = (Button) findViewById(R.id.btnLer1);

        btnLer1.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                try  {
                    EditText nomeArquivo = (EditText) findViewById(R.id.nomeArqTxt);
                    EditText txtDigitado = (EditText) findViewById(R.id.txtDigitado);
                    TextView conteudoArquivo = (TextView)findViewById(R.id.conteudoArquivo);

                    File arquivoRecuperado = getFileStreamPath(nomeArquivo.getText().toString());
                    if (arquivoRecuperado.exists()) {
                        FileInputStream arqRacuperado = openFileInput(nomeArqTxt.getText().toString());
                        int tamanhoArquivo = arqRacuperado.available();
                        byte dadosBytesLidos[] = new byte[tamanhoArquivo];
                        arqRacuperado.read(dadosBytesLidos);
                        String txtLido = new String(dadosBytesLidos);
                        txtDigitado.setText(txtLido);
                    }else {
                        Toast.makeText(ler_Arquivo.this, "Arquivo não encontrado", Toast.LENGTH_LONG).show();
                    }
                } catch (FileNotFoundException e) {
                    e.printStackTrace();
                } catch (IOException e) {
                    e.printStackTrace();
                }
            }
        });
    }
}
    
asked by anonymous 22.09.2018 / 20:37

0 answers