Java 如何在Android Studio中使用fileReader读取文本文件数据?

Java 如何在Android Studio中使用fileReader读取文本文件数据?,java,android,text,filereader,Java,Android,Text,Filereader,我有一个在Java中工作的文件阅读器,但同样的方法不适用于Android Studio。我在Eclipse中用于读取文本文件数据的代码是: public void addTextFilesToCardsArrayList(String fileName) throws IOException{ FileReader freader = new FileReader(fileName); BufferedReader reader = new BufferedRe

我有一个在Java中工作的文件阅读器,但同样的方法不适用于Android Studio。我在Eclipse中用于读取文本文件数据的代码是:

public void addTextFilesToCardsArrayList(String fileName) throws IOException{
        FileReader freader =  new FileReader(fileName);
        BufferedReader reader = new BufferedReader(freader);
        String line = null;
        try {
            while ((line = reader.readLine()) != null) {        //Read a file line by line
                 String[] split = line.split(",");              //Parse the line in to usable fragments
                 int cardNumber = Integer.parseInt(split[0]);
                 String cardId = split[1];
                 int apc = Integer.parseInt(split[2]);
                 int hp = Integer.parseInt(split[3]);
                 String type = split[4];

                 Card card = new Card(cardNumber, cardId, apc, hp, type);
                 cards.add(card);
            }
        } catch (FileNotFoundException e) {
            e.printStackTrace();
        }
    }
我在“main”目录中创建的资产文件夹中放置了一个名为“cards.txt”的文本文件。通常我将其作为参数传入,就像Eclipse中的“cards.txt”一样。如何让它在Android Studio fileReader中工作

我已经看到InputStream is=getAssets().open(“file.txt”);正在使用,但我喜欢保持我的方法基本相同,而不重写我的fileReader代码

我在“main”目录中创建的资产文件夹中放置了一个名为“cards.txt”的文本文件

这是开发机器上的一个文件。它不是Android设备上的文件

我已经看到InputStream is=getAssets().open(“file.txt”);正在使用

这是正确的使用方法

但是我喜欢在不重写fileReader代码的情况下保持我的方法基本相同

然后将
InputStream
而不是
String
传递到
addTextFilesToCardsArrayList()
。将
FileReader
替换为
InputStreamReader
。在Android中,使用
getAssets().open()
中的
InputStream
。在其他地方,请使用
FileInputStream

我在“main”目录中创建的资产文件夹中放置了一个名为“cards.txt”的文本文件

这是开发机器上的一个文件。它不是Android设备上的文件

我已经看到InputStream is=getAssets().open(“file.txt”);正在使用

这是正确的使用方法

但是我喜欢在不重写fileReader代码的情况下保持我的方法基本相同


然后将
InputStream
而不是
String
传递到
addTextFilesToCardsArrayList()
。将
FileReader
替换为
InputStreamReader
。在Android中,使用
getAssets().open()
中的
InputStream
。在其他地方,使用
FileInputStream

我看到InputStream is=getAssets().open(“file.txt”);正在使用
。的确这就是方法。
我已经看到InputStream is=getAssets().open(“file.txt”);正在使用
。的确就是这样。你的意思是:public void addTextFilesToCardsArrayList()抛出IOException{InputStream is2=getAssets().open(“Cards4.txt”);InputStreamReader freader=new InputStreamReader(is2);BufferedReader=new BufferedReader(freader)@Qwisatz:即兴,看起来不错。你的意思是:public void addTextFilesToCardsArrayList()抛出IOException{InputStream is2=getAssets()。open(“Cards4.txt”);InputStreamReader freader=new InputStreamReader(is2);BufferedReader=new BufferedReader(freader);@Qwisatz:即兴,看起来不错。