Diciamo che quasi tutte le app hanno bisogno di scrivere delle informazioni da qualche parte.

Ad esempio, nel mio caso, ho una appa che prende i dati da dei file JSON, memorizzati nella memoria dello smartphone.

Oggi vediamo come creare i file attraverso le nostre app Android.

Prima di tutto nell'Activity (o nel Fragment) impostiamo il path generale di dove salvare i file:

private String path = Environment.getExternalStorageDirectory().getAbsolutePath() + File.separator;

Il metodo getExternalStorageDirectory identifica, appunto, lo external storage di un dispositivo.

A questo punto vediamo come creare i file; nel mio esempio interrogo una base dati in remoto, e con i dati restuiti creo il file.

Avrò quindi una classe AsyncTask che richiama tutto il resto:

public class DownloadDatas extends AsyncTask<Object, Object, Object>  {

        @Override
        protected Object doInBackground(Object... params) {
            Service s = new Service();
            try {
                JsonFile.create(path + "last_entries.json", s.getLastItems("last_entries.php"));
            } catch (ClientProtocolException e) {
            } catch (IOException e) {
            } catch (JSONException e) {
            }
            return null;
        }
    }

L'oggetto Service è quello che si preoccupa di interrogare un web service remoto.

Di questo ne ho già parlato e quindi non mi ci soffermo.

Vediamo un semplice codice che riesce a leggere il contenuto di file usando un url.

Non so che utilità possa avere e quando usarlo.

Però magari qualche idea può sempre venire.

Io l'ho usato dentro un programmino per riempire una JTextArea ad esempio...