AI摘要
文章介绍了如何在Android中读取raw目录和assets目录下的文件。对于raw目录下的文件,可以使用getResources().openRawResource()方法打开文件,然后通过InputStreamReader和BufferedReader读取文件内容。对于assets目录下的文件,可以通过getResources().getAssets().open()方法打开文件,同样使用InputStreamReader和BufferedReader读取内容。文章还提到,来自Resources和Assets中的文件只能读取,不能写入。
今天在读取文件的时候,突然想了一下,如果文件是放在raw目录下面应该怎么读取呢?
需要注意的是,来自Resources和Assets 中的文件只可以读取而不能进行写的操作
以下为从Raw文件中读取:
publicString getFromRaw(){
try{
InputStreamReader inputReader=newInputStreamReader( getResources().openRawResource(R.raw.test1));
BufferedReader bufReader=newBufferedReader(inputReader);
String line="";
String Result="";
while((line=bufReader.readLine())!=null)
Result+=line;
returnResult;
}catch(Exception e) {
e.printStackTrace();
}
}
以下为直接从assets读取
publicString getFromAssets(String fileName){
try{
InputStreamReader inputReader=newInputStreamReader( getResources().getAssets().open(fileName) );
BufferedReader bufReader=newBufferedReader(inputReader);
String line="";
String Result="";
while((line=bufReader.readLine())!=null)
Result+=line;
returnResult;
}catch(Exception e) {
e.printStackTrace();
}
}
当然如果你要得到内存流的话也可以直接返回内存流!