如何检索Android设备中的特定文件?

时间:2016-08-19 10:03:20

标签: android filepath

我创建了一个Android应用程序,用于从服务器下载.mp3文件并将其存储在内部存储器的文件夹中。现在我想获取下载的文件并为用户播放。

如何使用Media Player检索该单个文件并播放该文件。

有人能为我找到解决方案吗?

2 个答案:

答案 0 :(得分:1)

要获取文件并更改其扩展名,此代码可能很有用..

public void jjj(View view) {

    File file  = new File(Environment.getExternalStorageDirectory().toString() + "/Jithin's/downloadedfile.srt"); // handler to your ZIP file
    File file2 = new File(Environment.getExternalStorageDirectory().toString() + "/Jithin's/downloadedfile.mp3");
    // destination dir of your file
    boolean success = file.renameTo(file2);

//-----------------------------------------------------------------------------------------------------------
    final MediaPlayer mp=new MediaPlayer();
    try{
        //you can change the path, here path is external directory(e.g. sdcard) /Music/maine.mp3
        mp.setDataSource(Environment.getExternalStorageDirectory().getPath()+"/Jithin's/downloadedfile.mp3");

        mp.prepare();
    }catch(Exception e){e.printStackTrace();}

    mp.start();
//------------------------------------------------------------------------------------------------------------
    if (success) {
        // File has been renamed
        Toast.makeText(MainActivity.this, "Changed Extension .... ", Toast.LENGTH_SHORT).show();
    }

答案 1 :(得分:0)

编辑:问题首先是如何从内部存储中播放文件中的MP3文件。我的回答与这个问题有关。

您可以使用Context.getFilesDir()方法获取内部存储的路径。

用法:

String path = getFilesDir() + "/" + name;

请注意,如果将mp3文件放在子目录中,该名称也可以包含目录名称。

播放:

mediaPlayer = new  MediaPlayer();
mediaPlayer.setDataSource(path);
mediaPlayer.prepare();   
mediaPlayer.start()