2012-08-14 33 views

Respuesta

1

Crea el objeto SimpleMultipartEntity y llama al addPart para cada archivo que quieras subir.

+0

No funcionó .. simplemente se fusionó el segundo archivo a la primera .. –

+1

Quiero añadir dos archivos para la misma clave .. puede ser por eso que este método es la fusión –

+0

tener ¿puedes arreglar eso? por favor, comparta –

-1

Debe utilizar este código:

public static void fileUpLoad(String url,File file,AsyncHttpResponseHandler asyncHttpResponseHandler){ 
    RequestParams requestParams=new RequestParams(); 

    try{ 
     requestParams.put("profile_picture", file,"application/octet-stream"); 
     client.post(url, requestParams, new AsyncHttpResponseHandler()); 
    } catch (Exception e) { 
     e.printStackTrace(); 
    } 
} 
+0

La solicitud es la carga de varias partes. –

3

se puede pasar una matriz archivo como valor de la clave archivos. Con el fin de hacer eso, siga el código de abajo:

File[] myFiles = { new File("pic.jpg"), new File("pic1.jpg") }; 
RequestParams params = new RequestParams(); 
try { 
    params.put("profile_picture[]", myFiles); 
} catch(FileNotFoundException e) { 

} 

Adicionalmente, si desea una matriz dinámica, se puede usar un ArrayList y convertir a File [] tipo con el método .toArray()

ArrayList<File> fileArrayList = new ArrayList<>(); 

//...add File objects to fileArrayList 

File[] files = new File[fileArrayList.size()]; 
fileArrayList.toArray(files); 

Hope this help. = D

+0

Tengo un problema aquí: hago exactamente lo anterior, pero no se llama a onSuccess CallBack. Cuando subo siete archivos [imágenes] más o menos, obtengo solo una imagen como conjunto y el resto están en blanco. Sin embargo, esto funciona con 4 archivos, pero nunca se recibe la devolución de llamada para el éxito. –

0

Debe pasar todos sus archivos como parámetro en params. Por ejemplo:

params.put("file_one", myFiles1); 
params.put("file_two", myFiles2) 
0

archivo [] = lst.toArray archivos (File nueva [lst.size()]);

try { 
     params.put("media[]", files); 
    } catch (FileNotFoundException e) { 
     e.printStackTrace(); 
    } 
Cuestiones relacionadas