首页 > 解决方案 > 使用 rootBundle 从资产加载 .txt 文件

问题描述

亲爱的 Stackoverflow 社区,

我的目标是使用 loadString 将一个简单的文本文件 (.txt) 作为字符串加载。根捆绑。不幸的是,它不起作用,我收到以下错误:[ERROR:flutter/lib/ui/ui_dart_state.cc(177)] Unhandled Exception: FormatException: Unexpected extension byte (at offset 250)。

如果我在 Texteditor 中打开同一个文件并将其内容复制到一个新的文本文件中并使用 rootBundle 打开新文件,它可以完美地工作。

感谢您对此的任何帮助

这是我的代码

import 'fluxData.dart';
import 'package:flutter/services.dart';



class FluxBrain {
 

  String data;


  Future<void> getTheData() async {
    data = await rootBundle.loadString('textFiles/textDemo.txt');

}
}

标签: flutter

解决方案


我无法解决问题,但我找到了导致问题的标志。我试图阅读的文本文件包含带有°符号的温度。即导致错误的意外扩展字节(在偏移量 250 处)。

在 android studio 或 TextEdit 中打开文件,° 显示为无穷大符号 (TEMPERATURE (∞C))。这个无穷大符号是不可读的。我认为问题在于文件是由基于 Microsoft 的 PDA(便携式设备)生成的。Android 设备生成的相同文本文件不会导致此问题。


推荐阅读