【问题标题】:Why is Android not seeing existing files in assets?为什么 Android 看不到资产中的现有文件?
【发布时间】:2015-06-18 11:25:20
【问题描述】:

我正在使用 Android Studio 开发我的 Android 应用。我在子文件夹 red_voznje 的 Assets 文件夹中创建了我在 android studio 中使用的文件。 这是我的代码

            fileLinija = "smbzag";
            if(TimeDay == 7) fileLinija += "sub";
            else if(TimeDay == 1) fileLinija += "ned";
            GetFromTime(fileLinija);
            fileLinija = "zagsmb";
            if(TimeDay == 7) fileLinija += "sub";
            else if(TimeDay == 1) fileLinija += "ned";
            GetToTime(fileLinija);

这里是GetToTime函数,GetFromTime基本相同,我只是将resault保存在TimeMinFromSmb而不是TimeMinToSmb

public void GetToTime(String file){
    AssetManager mngr;
    String red = null;
    int Timemin=0;
    int Timeh=0;
    try{
        mngr = getAssets();
        InputStream is = mngr.open(file);
        InputStreamReader isr = new InputStreamReader(is);
        BufferedReader br = new BufferedReader(isr);
        do
        {
            red=br.readLine();
            Timeh = Character.getNumericValue(red.charAt(0));
            if(Timeh == 9){
                break;
            }
            Timeh *= 10;
            Timeh += Character.getNumericValue(red.charAt(1));
            Timemin = Character.getNumericValue(red.charAt(3));
            Timemin *= 10;
            Timemin += Character.getNumericValue(red.charAt(4));
            LinijaBusaToSmb = Character.getNumericValue(red.charAt(6));
            LinijaBusaToSmb *= 10;
            LinijaBusaToSmb += Character.getNumericValue(red.charAt(7));
        }while((TimeH>Timeh)||((TimeH == Timeh)&&(Timemin<TimeMin)));//popraviti

        if(TimeMin <= Timemin) {
            TimeMinSmjerToSmb = Timemin - TimeMin;
            TimeHSmjerToSmb = Timeh - TimeH;
        }else{
            TimeMinSmjerToSmb = 60 - TimeMin + Timemin;
            TimeHSmjerToSmb = Timeh - TimeH - 1;
        }

    }
    catch (Exception e){}
}

smbzag 和 zagsmb 都存在于 Assets 文件夹中,但 smbzag 未打开会在从资产管理器创建 InputStream 时停止。我该怎么做才能解决这个问题?

【问题讨论】:

  • 你能把你得到的错误日志贴出来吗?
  • 记录您的异常,不要忽略它们。您还可以解压缩 .apk 以验证资产是否已正确打包。

标签: android file assets


【解决方案1】:

确保您正在拨打电话

从您的活动中获取资产()。

否则你可以试试这个解决方案:

https://stackoverflow.com/a/9544777/3108270

【讨论】:

    【解决方案2】:

    确保您创建了 assets 文件夹,并将所有文件放在 app 目录下的 app.iml 文件中,路径由以下行指定。

        <option name="ASSETS_FOLDER_RELATIVE_PATH" value="/src/main/assets" />
    

    【讨论】:

      【解决方案3】:

      我已删除所有资产并使用 Windows 资源管理器将它们添加到资产目录中,并添加扩展名 .txt

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2021-01-14
        • 1970-01-01
        • 1970-01-01
        • 2014-11-01
        • 1970-01-01
        • 2011-08-11
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多