Studio中创建assets文件
project视图下app->src->main,new Directory,"assets"
创建一个文本info.txt用UTF-8形式保存与assets文件夹下
sublime->
1.这是一个UTF-8编码的一个文本
2.这是第二行数据
3.333
4.4444
5.55555
File->save with Encoding->utf-8->工程文件assets->info.txt
activity_main.xml
<Button
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text=" 读取Txt数据"
android:id="@+id/readtxbtn"
android:layout_alignParentLeft="true"
android:layout_alignParentStart="true"
android:layout_marginTop="43dp"/>
MainActivity.class
public classMainActivityextendsAppCompatActivity {
private static finalStringTAG="ReadAssets";
@Override
protected voidonCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
findViewById(R.id.readtxbtn).setOnClickListener(newView.OnClickListener() {
@Override
public voidonClick(View view) {
try{
/***
* 1.open函数返回InputStream类型
* 2.读取文本格式时字节流转化为字符流
* 3.每一个字节对应的字符并不相同,编码错误可能出现乱码情况
*/
InputStream is = getResources().getAssets().open("info.txt");
InputStreamReader isr =newInputStreamReader(is,"UTF-8");
BufferedReader bfr =newBufferedReader(isr);
String in ="";
while((in = bfr.readLine())!=null){
Log.i(TAG,in);
}
}catch(IOException e) {
e.printStackTrace();
}}});}}
效果:
网友评论