Android 我找不到试图用filereader类读取的文件

Android 我找不到试图用filereader类读取的文件,android,file,text,filepath,Android,File,Text,Filepath,我已经创建了一个名为ECGFilereader的文件读取器类,它应该打开一个.txt文件,但当我调试时,它会将FileNotFoundException抛出到使用txt.txt文件的波形类中 下面是我的代码,任何帮助或建议都将不胜感激 ECGFilereader.java import java.io.File; import java.io.FileNotFoundException; import java.util.Scanner; public class ECGFilereader

我已经创建了一个名为ECGFilereader的文件读取器类,它应该打开一个.txt文件,但当我调试时,它会将FileNotFoundException抛出到使用txt.txt文件的波形类中

下面是我的代码,任何帮助或建议都将不胜感激

ECGFilereader.java

import java.io.File;
import java.io.FileNotFoundException;
import java.util.Scanner;


public class ECGFilereader {

    public final static int numChannels = 12;
    public final static int numSamples = 500*6; //500 = fs so *6 for 6 seconds of data
    private File file;
    private Scanner scanner;
    int [] [] ecg = new int [numChannels] [numSamples];
    /*private String path;
    public ECGFilereader(String file_path){
        path = file_path;
    } */

     public ECGFilereader (String fname) throws FileNotFoundException 
     {
        file = new File("res/raw/ecg.txt");
        scanner = new Scanner(file);
    }

    public boolean ReadFile(Waveform[] waves) 
    {
        for (int m=0; m<numSamples && scanner.hasNextInt(); m++)
        {
            int x = scanner.nextInt();
            for (int chan = 0; chan<numChannels && scanner.hasNextInt(); chan++)
            {
                ecg [chan] [m] = scanner.nextInt();     
            }
        }
        for (int chan=0; chan<numChannels; chan++)
            waves[chan].setSignal(ecg[chan]);
        return false;

    }

}
导入java.io.File;
导入java.io.FileNotFoundException;
导入java.util.Scanner;
公共类ECGFilereader{
公共最终静态整数通道=12;
public final static int numSamples=500*6;//500=fs so*6表示6秒的数据
私有文件;
私人扫描仪;
int[]ecg=新的int[numChannels][numSamples];
/*私有字符串路径;
公共ECGFilereader(字符串文件\u路径){
路径=文件路径;
} */
公共ECGFilereader(字符串fname)引发FileNotFoundException
{
file=新文件(“res/raw/ecg.txt”);
扫描仪=新扫描仪(文件);
}
公共布尔读取文件(波形[]波)
{

对于(int m=0;m您不能直接访问res文件夹中的文件。如果您想访问原始文件夹中的文件,请尝试
getResource()。openrawsource(int id)


请看这里:

感谢您的快速响应,但结果表明,在原始文件夹中保存数据是完全错误的,我需要将数据存储在sd卡上,我应该能够做到这一点。
import android.graphics.Canvas;
import android.graphics.Color;
import android.graphics.Paint;
import android.graphics.Paint.Style;
import android.graphics.Path;
import android.graphics.PointF;

public class Waveform {

    private int[] signal;


    public void setSignal(int [] x)
    {
        signal = new int[x.length];
        for (int n = 0; n < x.length; n++)
            signal[n] = x[n];
    }

    public void drawSignal(Canvas c, PointF pos)
    {
        Paint paint = new Paint();
        //paint.setColor(getResources().getColor(R.color.ECG_WaveI));
        paint.setColor(Color.BLACK);
        paint.setStyle(Style.STROKE);

        Path path = new Path();
            path.moveTo(pos.x, pos.y);

            for (int n=1; n<ECGFilereader.numSamples; n++)
                path.lineTo(pos.x, (pos.y+signal[(int) n]));
                c.drawPath(path, paint);
    }

}