android读写文件的,Android读写文件
今天做一個(gè)Android的文件管理器,里面用到很多的地方用到了getResources。
Drawable currentIcon = null;
………………
currentIcon = getResources().getDrawable(R.drawable.folder);
………………
currentIcon = getResources().getDrawable(R.drawable.image);
…………
一開(kāi)始不是很理解為什么用c getResources()這個(gè)方法就可以獲取存在系統(tǒng)的資源。于是看了一下文檔和翻閱了一下資料:
例如:把資源文件放到應(yīng)用程序的/raw/raw下,那么就可以在應(yīng)用中使用getResources獲取資源后,以openRawResource方法(不帶后綴的資源文件名)打開(kāi)這個(gè)文件。例如:
Resources myResources = getResources();
InputStream myFile = myResources.openRawResource(R.raw.myfilename);
和傳統(tǒng)的java文件操作一樣,在android Api中提供了openFileInput和openFileOutput方法來(lái)讀取設(shè)備上的文件。
簡(jiǎn)寫(xiě)
InputStream fs =this.getResources().openRawResource(R.raw.kb); (資源文件名為kb.html, 不需要帶后綴.html)
InputStreamReader read = new InputStreamReader (fs,”gb2312″);
BufferedReader in = new BufferedReader(read);
讀取res/drawable目錄下的png或者bmg
//得到Resources對(duì)象
Resources r = this.getContext().getResources();
//以數(shù)據(jù)流的方式讀取資源
Inputstream is = r.openRawResource(R.drawable.my_background_image);
BitmapDrawable bmpDraw = new BitmapDrawable(is);
Bitmap bmp = bmpDraw.getBitmap();
或者
InputStream is = getResources().openRawResource(R.drawable.icon);
Bitmap mBitmap = BitmapFactory.decodeStream(is);
Paint mPaint = new Paint();
canvas.drawBitmap(mBitmap, 40, 40, mPaint);
數(shù)據(jù)包package:android.content.res
主要類(lèi):Resources
InputStream openRawResource(int id) 獲取資源的數(shù)據(jù)流,讀取資源數(shù)據(jù)
把一個(gè)圖片資源,添加你的文件到你工程中res/drawable/目錄中去,從這里,你就可以引用它到你的代碼或你的XML布局中,也就是說(shuō),引用它也可以用資源編號(hào),比如你選擇一個(gè)文件只要去掉后綴就可以了(例如:my_image.png 引用它是就是my_image)。
總結(jié)
以上是生活随笔為你收集整理的android读写文件的,Android读写文件的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 求栈的长度的C语言函数,c – 编译器如
- 下一篇: android 调整cpu频率,[IMX