outputstream

Mattepuffo's logo
Creare file ZIP in Kotlin

Creare file ZIP in Kotlin

Continuando nel mio studio di Kotlin, mi sono imbattutto nella creazione di file ZIP con più files contemporaneamente.

Quindi, per fare un esempio basico, partendo da un array di file, vediamo come inserirli in un file ZIP.

Mattepuffo's logo
Download file in Android

Download file in Android

Quello che vediamo oggi è come scaricare file in Android dalla rete.

Prima di tutto i permessi da mettere nell'AnrdoidManifest:

<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />

Come vedete due sono quelli che ci servono come minimo: quello legato a internet per la connessione, e quello per salvare i file sul dispositivo.

Nella nostra Activity:

public class MainActivity extends Activity {
    
    private String path = Environment.getExternalStorageDirectory().getAbsolutePath() + File.separator;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        new DownloadDatas().execute("");
    }

    @Override
    public boolean onCreateOptionsMenu(Menu menu) {
        getMenuInflater().inflate(R.menu.main, menu);
        return true;
    }
    
    public class DownloadDatas extends AsyncTask  {

        @Override
        protected Object doInBackground(Object... params) {
            try {
                DownloadFile.downlad(path + "file.sqlite");
            } catch (IOException e) {
            }
            return null;
        }
      
    }

}

Come prima cosa, notiamo che qui impostiamo il path che punta alla directory interna al dispositivo, dove salvare i file.

Mattepuffo's logo
Copiare file con Java

Copiare file con Java

Che io sappia Java non ha di dfeault un metodo per copiare file.

Se diamo uno sguardo alla classe File, infatti, troviamo tantissimi metodi utili per creare, listare, "controllare, rinominare,....

Ma non un metodo diretto per copiarli.

I motivi per voler copiare un file possono essere molti.

Nel mio caso è quello di creare un file di backup del mio piccolo database SQLite portatile.

In sostanza pgni volta che aggiungo, modifico o cancello un record voglio creare una copia del file sqlite.

Per questo mi sono creato una classe con un metodo statico che prende il contenuto del file originale e lo travasa nel secondo.