Java Android读取与应用程序打包的.txt文件
我希望能够读入我的应用程序附带的文件myFile.txt,无论是在assets文件夹还是res/raw文件夹中,只要有,这都无关紧要 但是!我不想要那个文件的输入流。。。我希望能够做到以下几点:Java Android读取与应用程序打包的.txt文件,java,android,file,embedded-resource,Java,Android,File,Embedded Resource,我希望能够读入我的应用程序附带的文件myFile.txt,无论是在assets文件夹还是res/raw文件夹中,只要有,这都无关紧要 但是!我不想要那个文件的输入流。。。我希望能够做到以下几点: while ((reader = is.readLine()) != null) { ... } 我四处搜索,找到了一些很近的东西,但并不是我真正想要的 谢谢你的帮助 编辑-我正在尝试的一些代码: InputStream in = this.mCtx.getResources().openRawRes
while ((reader = is.readLine()) != null) { ... }
我四处搜索,找到了一些很近的东西,但并不是我真正想要的
谢谢你的帮助
编辑-我正在尝试的一些代码:
InputStream in = this.mCtx.getResources().openRawResource(R.raw.myFile);
Reader is = new BufferedReader(new InputStreamReader(in, "UTF8"));
现在怎么办?Reader类没有readLine方法那怎么办
BufferedReader reader = new BufferedReader(new BufferedInputStream(is));
编辑:对不起,是我的错。只要坚持使用BufferedReader。
打开ressource可以使用
InputStream is = getClass().getResourceAsStream("/org/example/res/my_file.txt");
参见关于
BufferedReader reader = new BufferedReader(new BufferedInputStream(is));
编辑:对不起,是我的错。只要坚持使用BufferedReader。
打开ressource可以使用
InputStream is = getClass().getResourceAsStream("/org/example/res/my_file.txt");
有关定义,请参见使用BufferedReader而不是Reader
BufferedReader is = new BufferedReader(new InputStreamReader(in, "UTF8"));
Bufferedreader有readline方法,但没有reader使用Bufferedreader代替reader进行定义
BufferedReader is = new BufferedReader(new InputStreamReader(in, "UTF8"));
Bufferedreader有readline方法,但没有reader,只需更改即可
Reader is = new BufferedReader(new InputStreamReader(in, "UTF8"));
到
BufferedReader有一个readLine方法。您不必要地向Reader升级,并丢失了附加功能。只需更改即可
Reader is = new BufferedReader(new InputStreamReader(in, "UTF8"));
到
BufferedReader有一个readLine方法。您不必要地向上转换到读卡器,并丢失了附加功能。您可以将文件存储在SD卡中,并在以下代码中的文件路径中指定其位置:
File selectedFile = new File("file_path");
FileInputStream fstream = new FileInputStream(selectedFile);
BufferedReader reader = new BufferedReader(new InputStreamReader(fstream));
然后
while ((strLine = reader.readLine()) != null)
{
//Do Stuff Here
}
您可以将文件存储在SD卡中,并在以下代码中的文件路径中指定其位置:
File selectedFile = new File("file_path");
FileInputStream fstream = new FileInputStream(selectedFile);
BufferedReader reader = new BufferedReader(new InputStreamReader(fstream));
然后
while ((strLine = reader.readLine()) != null)
{
//Do Stuff Here
}
使用以下步骤完成
使用以下步骤完成
我想你应该用这样的东西:
BufferedReader in = new BufferedReader(new InputStreamReader(activity.getAssets().open("yourfile")));
StringBuilder缓冲区=新的StringBuilder;
而line=in.readLine!=空缓冲区.appendline.append'\n'
在您的资产目录中,只需将文件放入扩展名为.txt的目录即可。
希望这对您有所帮助。我认为您应该使用以下内容:
BufferedReader in = new BufferedReader(new InputStreamReader(activity.getAssets().open("yourfile")));
StringBuilder缓冲区=新的StringBuilder;
而line=in.readLine!=空缓冲区.appendline.append'\n'
在您的资产目录中,只需将文件放入扩展名为.txt的目录即可。
希望这对您有所帮助。如何创建is对象?从输入流?我将用我正在尝试的一些代码更新OP。如何创建is对象?从输入流?我会用我尝试过的代码更新OP。太棒了,谢谢!编辑-我刚刚注意到我需要为此抛出一个异常。。。你知道在什么情况下会失败吗?请检查-你想看看InputStreamReader和BufferedReader的构造函数中抛出的异常的描述。谢谢!编辑-我刚刚注意到我需要为此抛出一个异常。。。你知道在什么情况下这可能会失败吗?请检查-你想看看InputStreamReader和BufferedReader的构造函数中抛出的异常的描述。这将丢弃新行,因为str没有新行。这可能不是个好主意。。。直接处理每一行或保存新行以供以后处理。这将丢弃新行,因为str没有新行。这可能不是个好主意。。。直接处理每一行或保存新行以供以后处理。