Android的数据访问方法——Assert
访问应用程序本身Assets目录内的资源。一般比较少用,有时候需要直接使用应用程序的本身的源文件(raw data, 如txt文件),这时候就可以将源文件放在Assets目录下。取得Assets目录下的文件通过IO操作,和Java IO取得文件内容一样。不过,取得Assets目录内文件内容,必须通过AssetsManager类的功能,而且不能修改文件内容。具体的做法,采用一个小例子来实现,这个程序中,取得Assets目录下一个txt文件的内容,将其显示在TextView上:
public class MainActivity extends Activity {
TextView text = null;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
setViews();
}
public void setViews(){
text = (TextView)findViewById(R.id.text);
try{
//通过调用Context的getAssets()取得AssetManager对象,在通过AssetManager对象调用open()函数打开文件
InputStream inStream = getAssets().open("A Farewell To Arms.txt");
byte buffer[] = new byte[inStream.available()];
inStream.read(buffer);
String bStr = new String(buffer);
text.setText(bStr);
}catch(Exception e){
e.printStackTrace();
}
}
}
程序运行结果如图,就是将文件中的内容读出来,显示到TextView上。
运行结果