| 注册
请输入搜索内容

热门搜索

Java Linux MySQL PHP JavaScript Hibernate jQuery Nginx
cd33
10年前发布

Android 读取assets文件下的txt文件

android 读取assets文件下的txt文件,解决了读取txt文件的乱码问题;


package com.example.com.scrollview;      import java.io.BufferedInputStream;  import java.io.BufferedReader;  import java.io.IOException;  import java.io.InputStream;  import java.io.InputStreamReader;      import android.app.Activity;  import android.content.res.AssetManager;  import android.os.Bundle;  import android.util.Log;  import android.widget.TextView;      public class MainActivity extends Activity {      private TextView novel;      @Override  protected void onCreate(Bundle savedInstanceState) {  super.onCreate(savedInstanceState);  setContentView(R.layout.activity_main);      novel = (TextView) findViewById(R.id.novel);  AssetManager am=getAssets();  try {  InputStream is=am.open("zx.txt");    String code=getCode(is);  is=am.open("zx.txt");  BufferedReader br=new BufferedReader(new InputStreamReader(is,code));    String line=br.readLine();  int i=0;  while(line!=null){  novel.append(line+"\n");  line=br.readLine();  i++;  if(i==200){  break;  }  }  } catch (IOException e) {  // TODO Auto-generated catch block  e.printStackTrace();  }    // novel.setText(readNovel());      }    public String getCode(InputStream is){  try {  BufferedInputStream bin = new BufferedInputStream(is);       int p;    p = (bin.read() << 8) + bin.read();        String code = null;              switch (p) {           case 0xefbb:               code = "UTF-8";               break;           case 0xfffe:               code = "Unicode";               break;           case 0xfeff:               code = "UTF-16BE";               break;           default:               code = "GBK";       }      is.close();     return code;  } catch (IOException e) {  // TODO Auto-generated catch block  e.printStackTrace();  }     return null;   }  }