Android - Como mover un archivo local a la memoria externa

 
Vista:
Imágen de perfil de Rodolfo

Como mover un archivo local a la memoria externa

Publicado por Rodolfo (2 intervenciones) el 14/02/2018 08:21:07
Hola, haber si alguien me puede ayudar, tengo el programa ya funcionando ya tengo el archivo creado y con ObjectOutputStream y ObjectInputStream logro leer y modificar el contenido del archivo que eh creado (registros.obj), el problema que tengo es que necesito mover por medio de un botón la ubicación de este archivo de la memoria local a la memoria externa, esto sin modificar los datos que ya se guardaron en este, alguien me puede ayudar con esto, gracias
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
sin imagen de perfil

Como mover un archivo local a la memoria externa

Publicado por Carlos Ismael (38 intervenciones) el 14/02/2018 17:28:45
Hola rodolfo te comento que lo que yo he encontrado buscando el internet es que cuando se mueve un archivo lo que se hace es copiar ese mismo archivo en otra ruta es decir creas un nuevo archivo a base del que va a "mover" y eliminas el archivo viejo" eso representa el mover un archivo de lugar.

Aqui te dejo un metodo que use para mover un PDF en *KOTLIN* alomejor no es el mejor código pero sirve :)
No olvides asignar permisos de Escritura en memoria Externa en el manifest.xml
Consejo, si usas Java te recomiendo que optes por Kotlin o que lo practiques ;)

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
//inputPath = dirección de entrada donde se toma el archivo a mover
//inputFile = nombre del Archivo.
//outputPath = direccion de salida donde se almacenara el archivo
fun moveFile( inputPath : String, inputFile : String,  outputPath : String)
{
	try {
		//Crea el directorio de salida si es que no existe.
		val dir = File(outputPath)
		if (!dir.exists())
			dir.mkdirs()
 
		//Inicializamos los Stream tanto input como output
		val inn = FileInputStream(inputPath + inputFile + ".pdf")
		val out = FileOutputStream(outputPath + inputFile + ".pdf")
 
		val buffer = ByteArray(1024)
		var read: Int
		//Se copia el archivo viejo al nuevo archivo
		while(true){
			read = inn.read(buffer)
			if(read == -1){
				break
			}
			out.write(buffer, 0, read)
		}
		inn.close()
		out.flush()
		out.close()
 
		// Se elimina el file "viejo"
		val file = File((inputPath + inputFile + ".pdf"))
		file.delete()
 
	} catch (fnfe1 : FileNotFoundException ) {
	} catch (e : Exception) {
	}
}
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Rodolfo

Como mover un archivo local a la memoria externa

Publicado por Rodolfo (2 intervenciones) el 15/02/2018 03:50:58
Gracias por tu respuesta Carlos, voy a tratar de implementar lo en android, gracias.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar