Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- public int uploadFile(String sourceFileUri) {
- String fileName = sourceFileUri;
- //Log.i("uploadFile", "File Uri : "
- // + fileName);
- HttpURLConnection conn = null;
- DataOutputStream dos = null;
- String lineEnd = "rn";
- String twoHyphens = "--";
- String boundary = "*****";
- int bytesRead, bytesAvailable, bufferSize;
- byte[] buffer;
- int maxBufferSize = 1 * 1024 * 1024;
- File sourceFile = new File(sourceFileUri);
- if (!sourceFile.isFile()) {
- dialog.dismiss();
- Log.e("SubirImagen", "No existe la imagen :" + imagepath);
- runOnUiThread(new Runnable() {
- public void run() {
- //messageText.setText("Source File not exist :"+ imagepath);
- Toast.makeText(DisplayImgCamActivity.this, "No existe imagen a subir", Toast.LENGTH_LONG).show();
- }
- });
- return 0;
- }
- else
- {
- try {
- // open a URL connection to the Servlet
- FileInputStream fileInputStream = new FileInputStream(sourceFile);
- URL url = new URL(urlServer);
- // Open a HTTP connection to the URL
- conn = (HttpURLConnection) url.openConnection();
- conn.setDoInput(true); // Allow Inputs
- conn.setDoOutput(true); // Allow Outputs
- conn.setUseCaches(false); // Don't use a Cached Copy
- conn.setRequestMethod("POST");
- conn.setRequestProperty("Connection", "Keep-Alive");
- conn.setRequestProperty("ENCTYPE", "multipart/form-data");
- conn.setRequestProperty("Content-Type", "multipart/form-data;boundary=" + boundary);
- conn.setRequestProperty("uploaded_file", fileName);
- dos = new DataOutputStream(conn.getOutputStream());
- dos.writeBytes(twoHyphens + boundary + lineEnd);
- dos.writeBytes("Content-Disposition: form-data; name="uploaded_file";filename=""
- + fileName + """ + lineEnd);
- dos.writeBytes(lineEnd);
- // create a buffer of maximum size
- bytesAvailable = fileInputStream.available();
- bufferSize = Math.min(bytesAvailable, maxBufferSize);
- buffer = new byte[bufferSize];
- // read file and write it into form...
- bytesRead = fileInputStream.read(buffer, 0, bufferSize);
- while (bytesRead > 0) {
- dos.write(buffer, 0, bufferSize);
- bytesAvailable = fileInputStream.available();
- bufferSize = Math.min(bytesAvailable, maxBufferSize);
- bytesRead = fileInputStream.read(buffer, 0, bufferSize);
- }
- // send multipart form data necesssary after file data...
- dos.writeBytes(lineEnd);
- dos.writeBytes(twoHyphens + boundary + twoHyphens + lineEnd);
- // Responses from the server (code and message)
- serverResponseCode = conn.getResponseCode();
- String serverResponseMessage = conn.getResponseMessage();
- Log.i("uploadFile", "HTTP Response is : "
- + serverResponseMessage + ": " + serverResponseCode);
- if(serverResponseCode == 200){
- runOnUiThread(new Runnable() {
- public void run() {
- String msg = "File Upload Completed.nn See uploaded file here : nn"
- +" F:/wamp/wamp/www/uploads";
- //messageText.setText(msg);
- Toast.makeText(DisplayImgCamActivity.this, "Imagen subida satisfactoriamente", Toast.LENGTH_LONG).show();
- }
- });
- }
- //close the streams //
- fileInputStream.close();
- dos.flush();
- dos.close();
- } catch (MalformedURLException ex) {
- dialog.dismiss();
- ex.printStackTrace();
- runOnUiThread(new Runnable() {
- public void run() {
- //messageText.setText("MalformedURLException Exception : check script url.");
- Toast.makeText(DisplayImgCamActivity.this, "MalformedURLException", Toast.LENGTH_LONG).show();
- }
- });
- Log.e("Upload file to server", "error: " + ex.getMessage(), ex);
- } catch (Exception e) {
- dialog.dismiss();
- e.printStackTrace();
- runOnUiThread(new Runnable() {
- public void run() {
- //messageText.setText("Got Exception : see logcat ");
- Toast.makeText(DisplayImgCamActivity.this, "Error: ver logcat ", Toast.LENGTH_LONG).show();
- }
- });
- Log.e("Upload file to server Exception", "Exception : " + e.getMessage(), e);
- }
- dialog.dismiss();
- return serverResponseCode;
- } // End else block
- }
- public Uri getImageUri(Context inContext, Bitmap inImage) {
- ByteArrayOutputStream bytes = new ByteArrayOutputStream();
- inImage.compress(Bitmap.CompressFormat.JPEG, 100, bytes);
- String path = Images.Media.insertImage(inContext.getContentResolver(), inImage, "Title", null);
- return Uri.parse(path);
- }
- public String getRealPathFromURI(Uri uri) {
- Cursor cursor = getContentResolver().query(uri, null, null, null, null);
- cursor.moveToFirst();
- int idx = cursor.getColumnIndex(MediaStore.Images.ImageColumns.DATA);
- return cursor.getString(idx);
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement