请教一下怎么播放指定sd卡里面的录音文件

自己写了一个录音功能,现在通过File把音频文件放在了listview上显示,怎么通过点击listview的item播放这个录音

package com.ar.mediaplayeractivity;

import java.io.File;
import java.io.IOException;
import java.util.ArrayList;
import java.util.List;

import android.app.Activity;
import android.content.Intent;
import android.media.AudioManager;
import android.media.MediaPlayer;
import android.os.Bundle;
import android.view.SurfaceHolder;
import android.view.SurfaceView;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.AdapterView;
import android.widget.AdapterView.OnItemClickListener;
import android.widget.ArrayAdapter;
import android.widget.Button;
import android.widget.EditText;
import android.widget.ListView;
import android.widget.Toast;

public class Media2DPlayer extends Activity {

private static final String TAG = "Media2DPlayer";
private ListView listView;
private List<String> lstFile =new ArrayList<String>(); //结果 List

private String  videoPath    = "/storage/emulated/0/2D"; //视频路径
private String  extName      = "mp4";//扩展名            
private boolean bIterative   = true;//查找子文件夹,搜索固定路径

private SurfaceView surfaceView;
private MediaPlayer mediaPlayer;
@Override
protected void onCreate(Bundle savedInstanceState) {
    // TODO Auto-generated method stub
    super.onCreate(savedInstanceState);

    setContentView(R.layout.main2);
    setTitle(R.string.play2D_Title);

    //我们设置一个List集合,然后向里边添加几条数据

    GetFiles(videoPath,extName,bIterative); 
    //获取xml文件中listView控件
    listView = (ListView)findViewById(R.id.list2d);
    //然后为listView控件调用setAdapter方法,让数据显示在界面上。
    listView.setAdapter(new ArrayAdapter<String>(this,android.R.layout.simple_list_item_1,lstFile));

    //为listView对象进行监听:当点击子项目的时候触发
    listView.setOnItemClickListener(new ItemClickEvent());

    surfaceView =(SurfaceView) this.findViewById(R.id.surfaceView2D);
    /*下面设置Surface不维护自己的缓冲区,而是等待屏幕的渲染引擎将内容推送到用户面前*/
    surfaceView.getHolder().setType(SurfaceHolder.SURFACE_TYPE_PUSH_BUFFERS);
    surfaceView.getHolder().setFixedSize(176, 144); //设置分辨率
    mediaPlayer = new MediaPlayer();

}
//继承OnItemClickListener,当子项目被点击的时候触发
private final class ItemClickEvent implements OnItemClickListener{
@Override
//这里需要注意的是第三个参数arg2,这是代表单击第几个选项
public void onItemClick(AdapterView<?> arg0, View arg1, int arg2,
long arg3) {
//通过单击事件,获得单击选项的内容
String text = listView.getItemAtPosition(arg2).toString();
//通过吐丝对象显示出来。
Toast.makeText(getApplicationContext(), text, 1).show();

        mediaPlayer.reset();
        mediaPlayer.setAudioStreamType(AudioManager.STREAM_MUSIC);
        try {
            mediaPlayer.setDataSource(text);
        } catch (IllegalArgumentException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        } catch (SecurityException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        } catch (IllegalStateException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        } catch (IOException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }//设置需要播放的视频
        mediaPlayer.setDisplay(surfaceView.getHolder());//把视频画面输出到SurfaceView
        try {
            mediaPlayer.prepare();
        } catch (IllegalStateException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        } catch (IOException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }
        mediaPlayer.start();
    }   
}

public void GetFiles(String Path, String Extension,boolean IsIterative) //搜索目录,扩展名,是否进入子文件夹
{   

    File[] files =new File(Path).listFiles();

    for (int i =0; i < files.length; i++)
    {
        File f = files[i];
        if (f.isFile())
        {
            if (f.getPath().substring(f.getPath().length() - Extension.length()).equals(Extension)) //判断扩展名
                lstFile.add(f.getPath());

            if (!IsIterative)
                break;
        }
        else if (f.isDirectory() && f.getPath().indexOf("/.") == -1) //忽略点文件(隐藏文件/文件夹)
            GetFiles(f.getPath(), Extension, IsIterative);
    }
}

@Override
protected void onResume() {
    // TODO Auto-generated method stub
    if(!mediaPlayer.isPlaying()) mediaPlayer.start();
    super.onResume();
}

@Override
protected void onPause() {
    // TODO Auto-generated method stub
    if(mediaPlayer.isPlaying()) mediaPlayer.pause();
    super.onPause();
}

@Override
protected void onDestroy() {
    // TODO Auto-generated method stub
    if(mediaPlayer.isPlaying()) mediaPlayer.stop();
    mediaPlayer.release();
    super.onDestroy();
}

}