android.net.Uri.getPath()方法的使用及代码示例

x33g5p2x  于2022-01-31 转载在 其他  
字(9.3k)|赞(0)|评价(0)|浏览(209)

本文整理了Java中android.net.Uri.getPath()方法的一些代码示例,展示了Uri.getPath()的具体用法。这些代码示例主要来源于Github/Stackoverflow/Maven等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。Uri.getPath()方法的具体详情如下:
包路径:android.net.Uri
类名称:Uri
方法名:getPath

Uri.getPath介绍

[英]Gets the decoded path.
[中]获取解码路径。

代码示例

代码示例来源:origin: stackoverflow.com

private String getRealPathFromURI(Uri contentURI) {
  String result;
  Cursor cursor = getContentResolver().query(contentURI, null, null, null, null);
  if (cursor == null) { // Source is Dropbox or other similar local file path
    result = contentURI.getPath();
  } else { 
    cursor.moveToFirst(); 
    int idx = cursor.getColumnIndex(MediaStore.Images.ImageColumns.DATA); 
    result = cursor.getString(idx);
    cursor.close();
  }
  return result;
}

代码示例来源:origin: stackoverflow.com

Uri filePathFromActivity = (Uri) extras.get(Intent.EXTRA_STREAM);
filePathFromActivity = Uri.parse(FileUtil.getRealPathFromUri( (Activity) IntentActivity.this, filePathFromActivity));
File imageFile = new File(filePathFromActivity.getPath());

代码示例来源:origin: TommyLemon/APIJSON

/**根据图库图片uri发送图片
 * @param selectedImage
 */
private void sendPicByUri(Uri selectedImage) {
  Cursor cursor = getContentResolver().query(selectedImage, null, null, null, null);
  if (cursor != null) {
    cursor.moveToFirst();
    int columnIndex = cursor.getColumnIndex("_data");
    picturePath = cursor.getString(columnIndex);
    cursor.close();
    cursor = null;
    if (picturePath == null || picturePath.equals("null")) {
      Toast toast = Toast.makeText(this, "找不到图片", Toast.LENGTH_SHORT);
      toast.setGravity(Gravity.CENTER, 0, 0);
      toast.show();
      return;
    }
  } else {
    File file = new File(selectedImage.getPath());
    if (!file.exists()) {
      Toast toast = Toast.makeText(this, "找不到图片", Toast.LENGTH_SHORT);
      toast.setGravity(Gravity.CENTER, 0, 0);
      toast.show();
      return;
    }
    picturePath = file.getAbsolutePath();
  }
  setResult(RESULT_OK, new Intent().putExtra(RESULT_PICTURE_PATH, picturePath));
}

代码示例来源:origin: guardianproject/haven

File fileMedia = new File(eventTrigger.getPath());
    FileInputStream fis = new FileInputStream(fileMedia);
    return newChunkedResponse(Response.Status.OK, getMimeType(eventTrigger), fis);
else if (uri.getPath().startsWith("/feed"))
  page.append("</head><body>");
  if (TextUtils.isEmpty(uri.getPath()) || uri.getPath().equals("/"))
    showEvents(page);
  else {

代码示例来源:origin: stackoverflow.com

Cursor c = context.getContentResolver().query(
    uri, projection, null, null, null);
if (c.moveToFirst()) {
  return c.getInt(0);
  ExifInterface exif = new ExifInterface(uri.getPath());
  int rotation = (int)exifOrientationToDegrees(
      exif.getAttributeInt(ExifInterface.TAG_ORIENTATION,

代码示例来源:origin: steelkiwi/cropiwa

@SuppressWarnings("ResultOfMethodCallIgnored")
public static void removeFromGallery(Uri uri) {
  if (uri.getScheme().startsWith("file")) {
    File f = new File(uri.getPath());
    if (f.exists()) {
      f.delete();
    }
  }
}

代码示例来源:origin: jdamcd/android-crop

return new File(uri.getPath());
} else if (SCHEME_CONTENT.equals(uri.getScheme())) {
  final String[] filePathColumn = { MediaStore.MediaColumns.DATA, MediaStore.MediaColumns.DISPLAY_NAME };
  try {
    cursor = resolver.query(uri, filePathColumn, null, null, null);
    if (cursor != null && cursor.moveToFirst()) {
      final int columnIndex = (uri.toString().startsWith("content://com.google.android.gallery3d")) ?
          cursor.getColumnIndex(MediaStore.MediaColumns.DISPLAY_NAME) :
        String filePath = cursor.getString(columnIndex);
        if (!TextUtils.isEmpty(filePath)) {
          return new File(filePath);

代码示例来源:origin: stackoverflow.com

public static String getPath(Context context, Uri uri) throws URISyntaxException {
  if ("content".equalsIgnoreCase(uri.getScheme())) {
    String[] projection = { "_data" };
    Cursor cursor = null;

    try {
      cursor = context.getContentResolver().query(uri, projection, null, null, null);
      int column_index = cursor.getColumnIndexOrThrow("_data");
      if (cursor.moveToFirst()) {
        return cursor.getString(column_index);
      }
    } catch (Exception e) {
      // Eat it
    }
  }
  else if ("file".equalsIgnoreCase(uri.getScheme())) {
    return uri.getPath();
  }

  return null;
}

代码示例来源:origin: commonsguy/cw-omnibus

@Override
protected long getDataLength(Uri uri) {
 File f=new File(getContext().getFilesDir(), uri.getPath());
 return(f.length());
}

代码示例来源:origin: crazycodeboy/TakePhoto

/**
 * 通过URI获取文件
 *
 * @param uri
 * @param activity
 * @return Author JPH
 * Date 2016/10/25
 */
public static File getFileWithUri(Uri uri, Activity activity) {
  String picturePath = null;
  String scheme = uri.getScheme();
  if (ContentResolver.SCHEME_CONTENT.equals(scheme)) {
    String[] filePathColumn = {MediaStore.Images.Media.DATA};
    Cursor cursor = activity.getContentResolver().query(uri, filePathColumn, null, null, null);//从系统表中查询指定Uri对应的照片
    cursor.moveToFirst();
    int columnIndex = cursor.getColumnIndex(filePathColumn[0]);
    if (columnIndex >= 0) {
      picturePath = cursor.getString(columnIndex);  //获取照片路径
    } else if (TextUtils.equals(uri.getAuthority(), TConstant.getFileProviderName(activity))) {
      picturePath = parseOwnUri(activity, uri);
    }
    cursor.close();
  } else if (ContentResolver.SCHEME_FILE.equals(scheme)) {
    picturePath = uri.getPath();
  }
  return TextUtils.isEmpty(picturePath) ? null : new File(picturePath);
}

代码示例来源:origin: stackoverflow.com

String filePath = null;
Uri _uri = data.getData();
Log.d("","URI = "+ _uri);                                       
if (_uri != null && "content".equals(_uri.getScheme())) {
  Cursor cursor = this.getContentResolver().query(_uri, new String[] { android.provider.MediaStore.Images.ImageColumns.DATA }, null, null, null);
  cursor.moveToFirst();   
  filePath = cursor.getString(0);
  cursor.close();
} else {
  filePath = _uri.getPath();
}
Log.d("","Chosen path = "+ filePath);

代码示例来源:origin: commonsguy/cw-omnibus

@Override
protected long getDataLength(Uri uri) {
 File f=new File(getContext().getFilesDir(), uri.getPath());
 return(f.length());
}

代码示例来源:origin: TommyLemon/Android-ZBLibrary

/**根据图库图片uri发送图片
 * @param selectedImage
 */
private void sendPicByUri(Uri selectedImage) {
  Cursor cursor = getContentResolver().query(selectedImage, null, null, null, null);
  if (cursor != null) {
    cursor.moveToFirst();
    int columnIndex = cursor.getColumnIndex("_data");
    picturePath = cursor.getString(columnIndex);
    cursor.close();
    cursor = null;
    if (picturePath == null || picturePath.equals("null")) {
      Toast toast = Toast.makeText(this, "找不到图片", Toast.LENGTH_SHORT);
      toast.setGravity(Gravity.CENTER, 0, 0);
      toast.show();
      return;
    }
  } else {
    File file = new File(selectedImage.getPath());
    if (!file.exists()) {
      Toast toast = Toast.makeText(this, "找不到图片", Toast.LENGTH_SHORT);
      toast.setGravity(Gravity.CENTER, 0, 0);
      toast.show();
      return;
    }
    picturePath = file.getAbsolutePath();
  }
  setResult(RESULT_OK, new Intent().putExtra(RESULT_PICTURE_PATH, picturePath));
}

代码示例来源:origin: zhihu/Matisse

public static String getPath(ContentResolver resolver, Uri uri) {
  if (uri == null) {
    return null;
  }
  if (SCHEME_CONTENT.equals(uri.getScheme())) {
    Cursor cursor = null;
    try {
      cursor = resolver.query(uri, new String[]{MediaStore.Images.ImageColumns.DATA},
          null, null, null);
      if (cursor == null || !cursor.moveToFirst()) {
        return null;
      }
      return cursor.getString(cursor.getColumnIndex(MediaStore.Images.ImageColumns.DATA));
    } finally {
      if (cursor != null) {
        cursor.close();
      }
    }
  }
  return uri.getPath();
}

代码示例来源:origin: stackoverflow.com

File privateFile = new File(getContext().getFilesDir(), uri.getPath());
return ParcelFileDescriptor.open(privateFile, ParcelFileDescriptor.MODE_READ_ONLY);

代码示例来源:origin: ankidroid/Anki-Android

try {
  cursor = context.getContentResolver().query(intent.getData(), new String[]{OpenableColumns.DISPLAY_NAME}, null, null, null);
  if (cursor != null && cursor.moveToFirst()) {
    filename = cursor.getString(0);
    Timber.d("handleFileImport() Importing from content provider: %s", filename);
} else if (filename != null) {
  String tempOutDir = Uri.fromFile(new File(context.getCacheDir(), filename)).getEncodedPath();
  errorMessage = ImportUtils.copyFileToCache(context, intent, tempOutDir) ? null : "copyFileToCache() failed";
String filename = intent.getData().getPath();
Timber.d("Importing regular file: %s", filename);
if (filename != null && filename.endsWith(".apkg")) {

代码示例来源:origin: stackoverflow.com

//----------------------------------------
 /**
  * This method is used to get real path of file from from uri
  * 
  * @param contentUri
  * @return String
  */
 //----------------------------------------
 public String getRealPathFromURI(Uri contentUri)
 {
   try
   {
     String[] proj = {MediaStore.Images.Media.DATA};
     Cursor cursor = managedQuery(contentUri, proj, null, null, null);
     int column_index = cursor.getColumnIndexOrThrow(MediaStore.Images.Media.DATA);
     cursor.moveToFirst();
     return cursor.getString(column_index);
   }
   catch (Exception e)
   {
     return contentUri.getPath();
   }
 }

代码示例来源:origin: stackoverflow.com

private void getDropboxIMGSize(Uri uri){
  BitmapFactory.Options options = new BitmapFactory.Options();
  options.inJustDecodeBounds = true;
  BitmapFactory.decodeFile(new File(uri.getPath()).getAbsolutePath(), options);
  int imageHeight = options.outHeight;
  int imageWidth = options.outWidth;

}

代码示例来源:origin: stackoverflow.com

File file = new File(Environment.getExternalStorageDirectory().getPath(), "MyFolder/Images");
if (!file.exists()) {
  file.mkdirs();
Cursor cursor = getContentResolver().query(contentUri, null, null, null, null);
if (cursor == null) {
  return contentUri.getPath();
} else {
  cursor.moveToFirst();
  int index = cursor.getColumnIndex(MediaStore.Images.ImageColumns.DATA);
  return cursor.getString(index);

代码示例来源:origin: nanchen2251/CompressHelper

/**
 * 获取真实的路径
 * @param context   上下文
 * @param uri       uri
 * @return          文件路径
 */
static String getRealPathFromURI(Context context, Uri uri) {
  Cursor cursor = context.getContentResolver().query(uri, null, null, null, null);
  if (cursor == null) {
    return uri.getPath();
  } else {
    cursor.moveToFirst();
    int index = cursor.getColumnIndex(MediaStore.Images.ImageColumns.DATA);
    String realPath = cursor.getString(index);
    cursor.close();
    return realPath;
  }
}

相关文章