Autore Topic: scrivere e leggere tre file  (Letto 1075 volte)

Offline giacomo96

  • Nuovo arrivato
  • *
  • Post: 1
  • Respect: 0
    • Mostra profilo
  • Dispositivo Android:
    HTC one x
  • Sistema operativo:
    Debian Squeeze
scrivere e leggere tre file
« il: 27 Dicembre 2012, 19:33:43 CET »
0
Salve a tutti e grazie in anticipo per l'aiuto che mi darete. Nella mia applicazione ho bisogno di memorizzare tre stringhe in tre diversi file e di poterle leggere in un'altra activity. Per ora stavo usando questo codice con un solo file ma quando ho provato a scrivere gli altri due file non succedeva niente.

Codice: [Seleziona]
Button saveButton = (Button) findViewById(R.id.saveButton);
                  saveButton.setOnClickListener(new View.OnClickListener() {
                    @Override
                    public void onClick(View v) {
                    save1("testo1.txt");
           
                   }
                  });
                 
                 
                  // codice per la lettura
                  Button loadButton = (Button) findViewById(R.id.loadButton);
                  loadButton.setOnClickListener(new View.OnClickListener() {
                           
                    @Override
                    public void onClick(View v) {
                    load1("testo1.txt");
               
                   }
                  });
                  Log.i("FileDemo", "Directory: " + getFilesDir().getAbsolutePath());
                 }
                private void save1(String filename) {
                       
              EditText et01 = (EditText) findViewById (R.id.editText1);
                  String numero1 = et01.getText().toString();
                  Writer writer = null;
                   try {
                   writer = new OutputStreamWriter(openFileOutput(filename,
                      MODE_PRIVATE));
                   writer.write(numero1);
                   Toast.makeText(this, "Testo salvato", Toast.LENGTH_LONG).show();
                  } catch (IOException e) {
                   Log.e("FileDemo", "Impossibile salvare il file", e);
                   Toast.makeText(this, "Errore", Toast.LENGTH_LONG).show();
                  } finally {
                    if (writer != null) {
                     try {
                     writer.close();
                    } catch (Throwable t) {
                    }
                   }
                  }
                 }
               
                private void load1(String filename) {
                  String numero1;
                  Reader reader = null;
                   try {
                   reader = new InputStreamReader(openFileInput(filename));
                   StringBuffer aux = new StringBuffer();
                    char[] buf = new char[1024];
                    int len;
                    while ((len = reader.read(buf)) != -1) {
                    aux.append(buf, 0, len);
                   }
                   numero1 = aux.toString();
                   Toast.makeText(this, "Testo caricato", Toast.LENGTH_LONG).show();
                  } catch (FileNotFoundException e) {
                   numero1 = "";
                   Toast.makeText(this, "Testo non trovato", Toast.LENGTH_LONG).show();
                  } catch (IOException e) {
                   Log.e("FileDemo", "Impossibile aprire il file", e);
                   numero1 = "";
                   Toast.makeText(this, "Errore", Toast.LENGTH_LONG).show();
                  } finally {
                    if (reader != null) {
                     try {
                     reader.close();
                    } catch (Throwable t) {
                    }
                   }
                  }
                  EditText et01 = (EditText) findViewById (R.id.editText1);
                  et01.setText(numero1);
                 
                 }

questo è un codice di prova che funziona, come dicevo però quando lo replico per creare i due nuovi file e provo l'app non funziona. :)

Offline meesta

  • Nuovo arrivato
  • *
  • Post: 15
  • Respect: 0
    • Mostra profilo
  • Dispositivo Android:
    Galaxy nexus
  • Play Store ID:
    meesta
Re:scrivere e leggere tre file
« Risposta #1 il: 18 Gennaio 2013, 12:41:21 CET »
0
Cosa vuol dire non funziona? Crasha? O semplicemente non crea gli altri due file?

Offline iMatteo

  • Nuovo arrivato
  • *
  • Post: 8
  • Respect: 0
    • Mostra profilo
Re:scrivere e leggere tre file
« Risposta #2 il: 19 Gennaio 2013, 13:16:42 CET »
0
Ma il file in quale directory viene salvato? perchè dopo che salvo il file non lo riesco a trovare
grazie a tutti

Offline meesta

  • Nuovo arrivato
  • *
  • Post: 15
  • Respect: 0
    • Mostra profilo
  • Dispositivo Android:
    Galaxy nexus
  • Play Store ID:
    meesta
Re:scrivere e leggere tre file
« Risposta #3 il: 19 Gennaio 2013, 13:34:05 CET »
0
In quale lo decidi te. Io mi sono creato una cartella tramite il comando mkdir. Ovviamente gli dici di salvartela sulla SD. Ricordati di aggiungere il permesso di operare sull'external memory. btw c'è tutto su internet :E

Offline iMatteo

  • Nuovo arrivato
  • *
  • Post: 8
  • Respect: 0
    • Mostra profilo
Re:scrivere e leggere tre file
« Risposta #4 il: 19 Gennaio 2013, 15:48:26 CET »
0
Io voglio salvarlo in una directory ben precisa della internal sd..cosa devo scrivere?

Offline meesta

  • Nuovo arrivato
  • *
  • Post: 15
  • Respect: 0
    • Mostra profilo
  • Dispositivo Android:
    Galaxy nexus
  • Play Store ID:
    meesta
Re:scrivere e leggere tre file
« Risposta #5 il: 19 Gennaio 2013, 20:10:36 CET »
0