How to convert the uri to inputStream data and upload the stream data into server? How to convert the uri to inputStream data and upload the stream data into server? android android

How to convert the uri to inputStream data and upload the stream data into server?


In the below code i have passed the uri into the inputstream and and then crated the file and inputStream data are written in outputstream.This works 100% try this method.

@Override    protected void onActivityResult(int requestCode, int resultCode, Intent data) {        super.onActivityResult(requestCode, resultCode, data);        if (resultCode == Activity.RESULT_OK) {            if (requestCode == PICK_FILE_REQUEST) if (data != null) {                //no data present                Uri uri = data.getData();                String filePath = data.getData().getPath();                String name = getContentName(getContentResolver(), uri);             File   file = new File(getCacheDir(),name);                int maxBufferSize = 1 * 1024 * 1024;                try {                  InputStream  inputStream = getContentResolver().openInputStream(uri);                    Log.e("InputStream Size","Size " + inputStream);                  int  bytesAvailable = inputStream.available();//                    int bufferSize = 1024;                   int bufferSize = Math.min(bytesAvailable, maxBufferSize);                    final byte[] buffers = new byte[bufferSize];                    FileOutputStream outputStream = new FileOutputStream(file);                    int read = 0;                    while ((read = inputStream.read(buffers)) != -1) {                        outputStream.write(buffers, 0, read);                    }                    Log.e("File Size","Size " + file.length());                    inputStream.close();                    outputStream.close();                    file.getPath();                    Log.e("File Path","Path " + file.getPath());                    file.length();                    Log.e("File Size","Size " + file.length());                    if(file.length() > 0){                        attachementImage.setVisibility(View.INVISIBLE);                    }                } catch (FileNotFoundException e) {                    e.printStackTrace();                } catch (IOException e) {                    e.printStackTrace();                }                try {                    bitmap = MediaStore.Images.Media.getBitmap(this.getContentResolver(), uri);                } catch (IOException e) {                    e.printStackTrace();               }                imageView.setImageBitmap(bitmap);                attachFile.addView(imageView);                attachFile.addView(textView);                return;            }        }}