获取Android文件资源的大小?

我的资源中的原始文件夹中有一个video文件。 我想find文件的大小。 我有这段代码:

Uri filePath = Uri.parse("android.resource://com.android.FileTransfer/" + R.raw.video); File videoFile = new File(filePath.getPath()); Log.v("LOG", "FILE SIZE "+videoFile.length()); 

但它总是给我,大小为0.我做错了什么?

Solutions Collecting From Web of "获取Android文件资源的大小?"

您无法使用File获取资源。 使用ResourcesAssetManager来获取资源的InputStream ,然后调用available()方法。

喜欢这个:

 InputStream is = context.getResources().openRawResource(R.raw.nameOfFile); int sizeOfInputStram = is.available(); // Get the size of the stream 

试试这些行:

 InputStream ins = context.getResources().openRawResource (R.raw.video) int videoSize = ins.available(); 

尝试这个:

 AssetFileDescriptor sampleFD = getResources().openRawResourceFd(R.raw.video); long size = sampleFD.getLength()