Android文件读写操作--读取Assets中的文件数据

知识概要:使用getResources().getAssets().open(“filename”);来获取Assets文件夹中的文件数据流

新建一个Android项目,在assets文件下新建一个Info.txt文件,写入一些数据,例如

1.这是使用GBK编码的一个文本
2.这是访问assets文件夹下的文本
3.第三行数据
4.第四行数据
5.第五行数据
6.第六行数据

在activity_main.xml代码如下:

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" >

    <Button  android:id="@+id/bt_txt" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignLeft="@+id/textView1" android:layout_alignParentTop="true" android:layout_marginTop="57dp" android:text="读取txt数据" />

</RelativeLayout>

在MainActivity.java文件的代码如下:

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
import android.app.Activity;
import android.os.Bundle;
import android.util.Log;
import android.view.View;
import android.view.View.OnClickListener;

public class MainActivity extends Activity {


    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
    findViewById(R.id.bt_txt).setOnClickListener(new OnClickListener() {

        @Override
        public void onClick(View arg0) {
            try {
        /*Info.txt文件是字符流 * InputStream 字节流 * InputStreamReader字符输入流 * * BufferedReader设置缓冲区 * 作用:从字符输入流中读取文本,缓冲各个字符,从而提供字符、数组和行的高效读取。 * */       
            InputStream is= getResources().getAssets().open("Info.txt");//读取资源下assets文件夹下的Info.txt文件数据
            InputStreamReader isr=new InputStreamReader(is, "GBK");//将字节流包装成字符流
            BufferedReader br=new BufferedReader(isr);//设置缓冲区
            String str="";
            while((str=br.readLine()) != null){//如果这行的数据不为空就读取数据

                Log.v("Tag", str);
                System.out.println(str);
            }

            } catch (IOException e) {
                e.printStackTrace();
            }

        }
    });

    }
}

然后点击运行项目,点击程序中的按钮,在LogCat工具中就可以查看结果了。

你可能感兴趣的:(android,文件读写操作)