Android的努力在资源原材料文件夹中打开文件时,口口声声说文件不存在 [英] Android trying to open file in Resource raw folder, keeps saying file does not exist

查看:206
本文介绍了Android的努力在资源原材料文件夹中打开文件时,口口声声说文件不存在的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我有code键打开存储在资源文件夹内的原始文件夹中的文件。对于(FileNotFoundException异常源源不绝了,唯一的例外想不通为什么。

code

 包besttech.rtstarwars;进口的java.io.File;
进口java.io.FileInputStream中;
进口java.io.FileNotFoundException;
进口java.io.FileOutputStream中;
进口java.io.IOException异常;进口android.app.Activity;
进口android.content.ContentResolver;
进口android.content.res.AssetFileDescriptor;
进口android.net.Uri;
进口android.os.Bundle;公共类RingtunesstarwarsActivity延伸活动{
    / **当第一次创建活动调用。 * /
    @覆盖
    公共无效的onCreate(捆绑savedInstanceState){
        super.onCreate(savedInstanceState);
        的setContentView(R.layout.main);
        testringtone();
    }    无效testringtone()
    {
        文件newSoundFile =新的文件(/ SD卡/,​​myringtone.oog);
        乌里穆里= Uri.parse(android.resource://besttech.rtstarwars/R.raw.blasters.mp3);
        ContentResolver的MCR = getContentResolver();
        AssetFileDescriptor音效档;
        尝试{
            音效档= mCr.openAssetFileDescriptor(穆里,R);
        }赶上(FileNotFoundException异常五){        // code源源不绝HERE
        音效档= NULL;
    }


解决方案

改变你的URI code为:

 字符串strUri =android.resource://+
         RingtunesstarwarsActivity.this.getPackageName()+/+原始/爆破;
乌里穆里= Uri.parse(strUri);

I have code to open a file stored in the raw folder inside the resource folder. The exception for (FileNotFoundException keeps going off, cannot figure out why.

code

package besttech.rtstarwars;

import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;

import android.app.Activity;
import android.content.ContentResolver;
import android.content.res.AssetFileDescriptor;
import android.net.Uri;
import android.os.Bundle;

public class RingtunesstarwarsActivity extends Activity {
    /** Called when the activity is first created. */
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);
        testringtone();
    }

    void testringtone()
    {
        File newSoundFile = new File("/sdcard/", "myringtone.oog");
        Uri mUri = Uri.parse("android.resource://besttech.rtstarwars/R.raw.blasters.mp3");
        ContentResolver mCr = getContentResolver();
        AssetFileDescriptor soundFile;
        try {
            soundFile= mCr.openAssetFileDescriptor(mUri, "r");
        } catch (FileNotFoundException e) {

        // CODE KEEPS GOING HERE
        soundFile=null;   
    }

解决方案

change your URI code as:

String strUri = "android.resource://"+ 
         RingtunesstarwarsActivity.this.getPackageName()+  "/" + "raw/blasters";
Uri mUri = Uri.parse(strUri);

这篇关于Android的努力在资源原材料文件夹中打开文件时,口口声声说文件不存在的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆