【问题标题】:How to read large number of files in raw in ANDROID?如何在 ANDROID 中读取大量原始文件?
【发布时间】:2015-10-03 14:36:16
【问题描述】:

我的原始文件夹中有 201 个文本文件,命名为 level0.txt、level1.txt、level2.txt........

我想阅读它们,但不想写 201 行代码

到目前为止我已经尝试过了

    private void readLevelName() {
          for (int i = 0 ; i <= 200 ; i++){
              String s = RRaw.substring(0,11)+i;
               map[i]= Integer.parseInt(s);
    // Log.e(""+i , s);
  }

RRaw 是我的包含“R.raw.level”的字符串,map[] 是一个 int 数组

错误是

 Caused by: java.lang.NumberFormatException: Invalid int: "R.raw.level0"

任何帮助将不胜感激

【问题讨论】:

标签: java android


【解决方案1】:

您不能将像“R.raw.level0”这样的字符串解析为 int。

如果您想按名称获取原始数据,您应该使用 getIdentifier()。

你的代码应该是这样的:

private void readLevelName() {

   String packageName = getPackageName();

   for (int i = 0 ; i <= 200 ; i++){
              String s = RRaw.substring(0,11)+i;
              map[i]= getResources().getIdentifier(s, "raw", packageName);
   }
}

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2011-05-04
    • 1970-01-01
    • 1970-01-01
    • 2017-12-14
    • 1970-01-01
    • 1970-01-01
    • 2012-01-15
    相关资源
    最近更新 更多