Buongiorno a tutti, come da titolo vorrei copiare un file da "File.DirInternal" del telefono a una directory visibile dall' App Files del telefono, ad esempio nella cartella Documenti del telefono creando una sottocartella all'interno di quest'ultima: Documenti\MioFile.
Come posso fare?
Grazie mille
Si se vai su gestione files la vedi, vorrei copiare lì il mio file da dirinternal per vedere quello che scrivo e fare il backup visto che non ho una memoria esterna nel telefono
Mi associo a @LucaMs e ti chiedo:
Forse è il File Manager che usi che ti presenta i file divisi per Categorie?
Perché il mio fà così.
Se invece guardo la struttura dell'archivio con un altro programma non ho la cartella Documenti, o le altre categorie.
Per vedere la struttura reale (chiamiamola così) io uso Total Commander.
Si se vai su gestione files la vedi, vorrei copiare lì il mio file da dirinternal per vedere quello che scrivo e fare il backup visto che non ho una memoria esterna nel telefono
Figlio di buona donna! (non tu @Fulvio75, Android )
B4X:
Sub Process_Globals
Private rp As RuntimePermissions
End Sub
Sub Activity_Create(FirstTime As Boolean)
rp.CheckAndRequest(rp.PERMISSION_WRITE_EXTERNAL_STORAGE)
Wait For Activity_PermissionResult (Permission As String, result As Boolean)
If result Then
Log(File.ListFiles(File.DirRootExternal)) 'ignore
Dim DocDir As String = File.Combine(File.DirRootExternal, "documents")
Log("documents:")
Log(File.ListFiles(DocDir)) 'ignore
Else
Log("permesso negato")
End If
End Sub
Lancia questo sorgente (crea una nuova app, per un test).
Pare funzionare, infatti non va in crash, ma... mi restituisce un array vuoto come file nella Documents - che invece non lo è!
Il file di cui parlo è un db che vado a copiare tramite DButil in internal per poterci scrivere sopra aggiungere record ecc.
Una volta che scrivo sopra dei dati devo poterlo anche rivedere, copiare in una directory visibile perche fino quando rimane in internal non lo posso vedere o copiare da nessuna parte, ecco perché vorrei copiarlo in documenti.
Ovvio se si può fare
Il file di cui parlo è un db che vado a copiare tramite DButil in internal per poterci scrivere sopra aggiungere record ecc.
Una volta che scrivo sopra dei dati devo poterlo anche rivedere, copiare in una directory visibile perche fino quando rimane in internal non lo posso vedere o copiare da nessuna parte, ecco perché vorrei copiarlo in documenti.
Ovvio se si può fare
E allora copia il db dalla cartella nella quale lo hai messo e modificato nella File.DirRootExternal. Dovrai aggiungere all'app i permessi, come vedi nel sorgente sopra.
fermo restando che la gestione dei relativi permessi è necessaria, ti informo (se ti può essere utile) che a suo tempo realizzai la libreria db2000.B4A.eXtrafunctions dove si trova la classe fFILETOOLS con diversi metodi per la gestione dei file e delle cartelle e dove la stringhe dei nomi (sorgente e/o destinazione) possono essere comprensive dei percorsi...
fermo restando che la gestione dei relativi permessi è necessaria, ti informo (se ti può essere utile) che a suo tempo realizzai la libreria db2000.B4A.eXtrafunctions dove si trova la classe fFILETOOLS con diversi metodi per la gestione dei file e delle cartelle e dove la stringhe dei nomi (sorgente e/o destinazione) possono essere comprensive dei percorsi...