Autore Topic: come scrivere su file  (Letto 4174 volte)

Offline esoni

  • Utente junior
  • **
  • Post: 102
  • Respect: 0
    • Mostra profilo
come scrivere su file
« il: 19 Luglio 2012, 16:24:24 CEST »
0
ciao ragazzi ho realizzato un appl che legge dei dati bluetooth da un dispositivo.
Tali dati li voglio salvare perche voglio analizzarli sul pc e studiarli (ad applicazione spenta).
Insomma li voglio salvare su un file di testo, mi chiedo
1) se testo l applicazione con il cellulare collegato al pc col cavo, è possibile salvare i dati su un file nuovo sul pc ? magari usando le consuete
classi I/0 di java per gestione file
2) se il modo 1 non è possibile come faccio ? devo salvare i dati su un file sulla memoria del cell ?

Offline iceweasel

  • Moderatore globale
  • Utente senior
  • *****
  • Post: 878
  • Respect: +147
    • Mostra profilo
  • Dispositivo Android:
    LGE P990 - Google Nexus 5
  • Sistema operativo:
    Linux Debian Sid
Re:come scrivere su file
« Risposta #1 il: 19 Luglio 2012, 16:38:47 CEST »
0
1) No, con USB è possibile scambiare dati ma non come lo hai descritto.
2) Si, ma solo nelle directory con i permessi in scrittura.
adb logcat | tee /tmp/logcat | grep TAG

Offline esoni

  • Utente junior
  • **
  • Post: 102
  • Respect: 0
    • Mostra profilo
Re:come scrivere su file
« Risposta #2 il: 19 Luglio 2012, 16:59:15 CEST »
0
si quindi se io creo
FileOutputStream fos=openFileOutput("outfile",MODE_WORLD_READEBLE);
dovrebbe crearmi un file outfile scaricabile anche sul pc e leggibile su normale notepad ?
ma dove lo crea ?

Offline Ricky`

  • Amministratore
  • Utente storico
  • *****
  • Post: 3489
  • Respect: +506
    • Github
    • Google+
    • rciovati
    • Mostra profilo
Re:come scrivere su file
« Risposta #3 il: 19 Luglio 2012, 17:20:57 CEST »
0
Nella cartella che viene restituita dal metodo getFilesDir() ;-)
Forse però nel tuo caso sarebbe più comodo se salvassi il file nella memoria esterna.
Per maggiori informazioni: Storage Options | Android Developers

Offline esoni

  • Utente junior
  • **
  • Post: 102
  • Respect: 0
    • Mostra profilo
Re:come scrivere su file
« Risposta #4 il: 20 Luglio 2012, 11:24:07 CEST »
0
ciao ragazzi ho provato a scrivere uno stupido file, e la scrittura avviene senza eccezzioni solo che nonso dove reperire il file ( lo vorrei transferire sul pc )
Codice (Java): [Seleziona]
 Log.d(TAG, "INIZIO SCRITTURA");
                                         FileOutputStream fos;
                                        try {
                                                fos =openFileOutput("prova.txt",Context.MODE_WORLD_READABLE);
                                                DataOutputStream dos = new DataOutputStream(fos);
                                                dos.writeInt(1);
                                                dos.close();
                                                Log.d(TAG, "SCRITTURA RIUSCITA");
                                                Toast.makeText(getApplicationContext(),  getFilesDir().getAbsolutePath() , 1).show();
                                               
                                        } catch (FileNotFoundException e) {
                                                Log.d(TAG, "FILE NOT FOUND ");
                                                return;
                                        } catch (IOException e) {
                                                Log.d(TAG, "IO EXCE");
                                                return;
                                        }


se chiamo  getFilesDir().getAbsolutePath() mi restituisce "/data/data/mypackage/files"  solo che se collego il cellulare via bluetooth non riesco a trovare sotto la cartella data un altra cartella che si chiama data

Offline Ricky`

  • Amministratore
  • Utente storico
  • *****
  • Post: 3489
  • Respect: +506
    • Github
    • Google+
    • rciovati
    • Mostra profilo
Re:come scrivere su file
« Risposta #5 il: 20 Luglio 2012, 11:36:54 CEST »
0
E' un po' un casino accedere alla cartella privata dell'applicazione. Per questo ti suggerivo di scrivere sulla memoria esterna.

Offline esoni

  • Utente junior
  • **
  • Post: 102
  • Respect: 0
    • Mostra profilo
Re:come scrivere su file
« Risposta #6 il: 20 Luglio 2012, 11:50:56 CEST »
0
andando nel menu memoria dal mio galaxi s3 ho notato chenon ho sd card, ma ho una memoriadi dispositivo e una di massa di 11.50 gb.
come posso scrivere su quella di massa ?
potete farmi anche un esempio stupidissimo

Offline esoni

  • Utente junior
  • **
  • Post: 102
  • Respect: 0
    • Mostra profilo
Re:come scrivere su file
« Risposta #7 il: 20 Luglio 2012, 12:03:46 CEST »
0
se invece provo a scrivere ad esempio nella cartella music mi viene sollevata sempre filenotfound exception
Codice (Java): [Seleziona]
         Log.d(TAG, "INIZIO SCRITTURA");
                                          File path = Environment.getExternalStoragePublicDirectory(
                                                    Environment.DIRECTORY_MUSIC);
                                            File file = new File(path, "prova.txt");
                                         // Make sure the Music directory exists.
                                        path.mkdirs();
                                        try {
                                                        OutputStream os = new FileOutputStream(file);
                                                        os.write("1".getBytes());
                                                        os.close();
                                                        Log.d(TAG, "scritturariuscita");

                                                } catch (FileNotFoundException e) {
                                                        Log.d(TAG, "FILE NON ESISTE");
                                                } catch (IOException e) {
                                                        Log.d(TAG, "IO EXCEPTION");

                                                }
                                           

Offline esoni

  • Utente junior
  • **
  • Post: 102
  • Respect: 0
    • Mostra profilo
Re:come scrivere su file
« Risposta #8 il: 20 Luglio 2012, 12:10:32 CEST »
0
RISOLTO:
PER I POSTERI: aggiungete nelmanifest i permessi
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"></uses-permission>
 

Offline mos

  • Nuovo arrivato
  • *
  • Post: 18
  • Respect: 0
    • Mostra profilo
  • Dispositivo Android:
    andorid galaxy 2.3.5
Re:come scrivere su file
« Risposta #9 il: 30 Aprile 2013, 16:49:27 CEST »
0
ciao ragazzi.

siccome sto facendo un lavoro su android vorrei sapere come fare a salvare i dati provenienti dal gps su file dati.txt all'interno della scheda di memoria o sul pc..non riesco ad uscirne fuori, ho seguito i consigli di tanti siti ma sembra che non riesca ad ottenere nulla..
dovrei introdurre questo pezzo di codice di scrittura in mezzo al mio codice..

mi date una dritta..vorrei qualcosa di chiaro ..grazie..