MediaStore에서 파일의 이름하고 uri주소 받아오는법

제가 미디어스토어에서 파일 선택한거에 URI를 받아오는 onActivityResult를 만들었는데요 Uri selectedImage = data.getData(); 이걸 String으로 바꾸면

content://media/external/images/media/47 이렇게 나오거나 경로로 하면 /external/images/media/47이렇게 나와요 근데 이걸 절대경로로 알수있는법은 없나요??왜냐면 이미지를 불러와서 따른 곳에 복사하고싶고 또 이렇게 URI에서 넘버링 되면 디바이스가 껐다켜지면 넘버링도 바뀔것같은데...

1답변

  • 좋아요

    0

    싫어요
    채택취소하기

    절대경로는

    public String getRealPathFromURI(Context context, Uri contentUri) {
      Cursor cursor = null;
      try { 
        String[] proj = { MediaStore.Images.Media.DATA };
        cursor = context.getContentResolver().query(contentUri,  proj, null, null, null);
        int column_index = cursor.getColumnIndexOrThrow(MediaStore.Images.Media.DATA);
        cursor.moveToFirst();
        return cursor.getString(column_index);
      } finally {
        if (cursor != null) {
          cursor.close();
        }
      }
    }
    

    이렇게 하시면 바꿀수있어요

ᕕ( ᐛ )ᕗ
로그인이 필요합니다

작성한 답변에 다른 개발자들이 댓글을 작성하거나 댓글에 좋아요/싫어요를 할 수 있기 때문에 계정을 필요로 합니다.