android另一种访问包资源方式

android文件资源分为两类即:资产(assets)与资源(res可以通过R类来直接资源,也可以通过getAssets().open(file)来访问,J2ME中一种常见的资源加载方式便是使用getClass().getResourceAsStream,那在android中能不能使用呢,答案是肯定,但是需要注意资源存放路径必须同类文件在一起(也即常用的SRC目录下。原理相当于类文件加载),使用这种方式可以完美解决J2ME移植到android上资源加载处理(经测试这种访问方式缺点有一个加载速度慢,完美的意义只针对移植J2ME api,使用这种方式加载可以不改动J2ME任何代码),下面给个简例:

InputStream is;

try {

    is = getClass().getResourceAsStream(

           "/example/pushpuzzle/data/jad.MF");

    if (is == null) {

       System.out.println("Could not find the game board for level ");

    } else {

        int ch = 0;

       StringBuffer str = new StringBuffer();

       while ((ch = is.read()) != -1) {

           str.append((char) ch);

       }

       String jad = str.toString();

       String[] s = jad.split("/r/n");

       for (String line : s) {

           System.out.println(line);

       }

    }

} catch (Exception ex) {

    ex.printStackTrace();

}

注意事项,这个方式请不要使用is.available(),这个返回方式同J2ME平台一样往往是错的。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值