为了账号安全,请及时绑定邮箱和手机立即绑定

在不冻结应用程序的情况下从 16MB 文件中读取数据的最佳方法

在不冻结应用程序的情况下从 16MB 文件中读取数据的最佳方法

当年话下 2022-12-28 16:10:46
我有一个问题,找不到好的解决方案。我需要读取一个包含大量数据的文本文件(文件有 16MB)。该文件包含 12 列,每一列都有整数值。通常我的问题是如何在不冻结应用程序的情况下执行此操作。我的文件在我的项目的资产文件夹中,我尝试使用这样的东西:AssetManager assetManager = this.getAssets();try {    InputStream inputStream = assetManager.open("3333.ecg");    BufferedReader bufferedReader = new BufferedReader(new InputStreamReader(inputStream));    String str;    while ((str = bufferedReader.readLine()) != null) {        stringBuilder.append(str);    }} catch (IOException e) {    e.printStackTrace();}但是应用程序冻结了。我的目标是从每一列中获取数据并将其保存到整数数组列表中。我正在寻找一些建议。提前致谢。
查看完整描述

1 回答

?
ABOUTYOU

TA贡献1812条经验 获得超5个赞

使用它在后台运行它:


AsyncTask.execute(new Runnable() {

   @Override

   public void run() {

    AssetManager assetManager = this.getAssets();

    try {

        InputStream inputStream = assetManager.open("3333.ecg");

        BufferedReader bufferedReader = new BufferedReader(new InputStreamReader(inputStream));

        String str;

        while ((str = bufferedReader.readLine()) != null) {

            stringBuilder.append(str);

    }

    } catch (IOException e) {

        e.printStackTrace();

    }

   }

});


查看完整回答
反对 回复 2022-12-28
  • 1 回答
  • 0 关注
  • 59 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信