myq_26 2012-09-21 02:19 采纳率: 16.7%
浏览 14286
已采纳

如何读出assets的资源

public class Utils {

    public static List<Message> getMesages() {

//File file = new File("file:///android_asset/helloworld.txtv");

AssetManager assetManager = getAssets();
InputStream ims assetManager.open("helloworld.txt");

     }
}

想读出assets文件夹下的资源。当使用File时显示fileNotFound异常,但是使用AssetManager getAssets()方法时,又不能识别。请问有什么方法可以解决这个问题呢?

  • 写回答

3条回答 默认 最新

  • android_baiyuchuan 2012-09-21 03:07
    关注
    public void getGetAssets(){
    AssetManager assetManager= context.getAssets();
    Log.e(TAG, assetManager.getLocales()+"");
    try {
    InputStream inputStream =   assetManager.open("atest");
    inputStream.read();
    InputStreamReader isr = new InputStreamReader(inputStream);  
    BufferedReader br = new BufferedReader(isr);  
    Log.i(TAG,"inputStream :" + inputStream.read());
    Log.i(TAG,"BufferedReader :" +br);
    Log.i(TAG,"BufferedReader :" +br.toString());
    Log.i(TAG,"BufferedReader :" +new String(br.readLine()));
    } catch (IOException e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
    }
    }
    

    你只要保证你的assets文件下有这个“atest”文件就可以了,我试了不会报错的。我的测试文件内容就是aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa

    09-21 03:04:30.626: E/bai(833): [Ljava.lang.String;@41072288
    

    09-21 03:04:30.626: I/bai(833): inputStream :97
    09-21 03:04:30.635: I/bai(833): BufferedReader :java.io.BufferedReader@41075e98
    09-21 03:04:30.635: I/bai(833): BufferedReader :java.io.BufferedReader@41075e98
    09-21 03:04:30.635: I/bai(833): BufferedReader :aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(2条)

报告相同问题?

悬赏问题

  • ¥15 flink cdc无法实时同步mysql数据
  • ¥100 有人会搭建GPT-J-6B框架吗?有偿
  • ¥15 求差集那个函数有问题,有无佬可以解决
  • ¥15 【提问】基于Invest的水源涵养
  • ¥20 微信网友居然可以通过vx号找到我绑的手机号
  • ¥15 寻一个支付宝扫码远程授权登录的软件助手app
  • ¥15 解riccati方程组
  • ¥15 使用rabbitMQ 消息队列作为url源进行多线程爬取时,总有几个url没有处理的问题。
  • ¥15 Ubuntu在安装序列比对软件STAR时出现报错如何解决
  • ¥50 树莓派安卓APK系统签名