Android Studio中放置assets文件夹需要手动创建,我以存放一张图片为例说明。
新建一个项目,切换到当前的Module,在main文件夹下新建一个名为“assets”文件夹如下图:
复制资源(这里以图片为例),粘贴到“assets”文件夹下,如下图:
在AndroidStudio里以输入流的方式读取资源,部分代码如下:
//从assets中读取图片,其它资源读取方式类似AssetManager am = res.getAssets()try { is = am.open("pic_assets.png")} catch (IOException e) { e.printStackTrace()}Bitmap bmp = BitmapFactory.decodeStream(is)
1。获取资源的输入流资源文件 sample.txt 位于 $PROJECT_HOME/assets/ 目录下,可以在 Activity 中通过
Context.getAssets().open(“sample.txt”)
方法获取输入流。
注意:如果资源文件是文本文件则需要考虑文件的编码和换行符。建议使用UTF-8和Unix换行符。
2. WebView 加载assets目录下的html文件
资源文件 sample.html 位于 $PROJECT_HOME/assets/ 目录下,可以通过以下代码
WebView.loadUrl(“file:///android_asset/sample.html”)
加载html文件。
新建assets文件夹,并将json文件复制到此文件夹中在main文件夹下新建assets文件,然后再assets文件中新建namelist.json文件夹,将json数据复制到test.json文件中。
2、访问json文件
try {
AssetManager assetManager = getAssets()// 获得assets资源管理器(assets中的文件无法直接访问,可以使用AssetManager访问)
InputStreamReader inputStreamReader = new InputStreamReader(assetManager.open("namelist.json"),"UTF-8")// 使用IO流读取json文件内容
BufferedReader br = new BufferedReader(inputStreamReader)
String line
StringBuilder builder = new StringBuilder()
while ((line = br.readLine())!=null){
builder.append(line)
}
br.close()
inputStreamReader.close()
JSONObject testJson = new JSONObject(builder.toString())// 从builder中读取了json中的数据。
// 直接传入JSONObject来构造一个实例
JSONArray array = testJson.getJSONArray("nameList")
Log.e("nameList",array.toString())
for (int i = 0i
strings[i] = array.getString(i)
}
} catch (IOException e) {
e.printStackTrace()
} catch (JSONException e) {
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)