【问题标题】:ReactNative -- Creating file with Python to be read by AsyncStorageReact Native - 使用 Python 创建文件以供 AsyncStorage 读取
【发布时间】:2023-03-06 16:52:01
【问题描述】:

我正在尝试解决我的应用程序的问题,该应用程序是在 ReactNative 中编程的。

我有一种名为“卡片”的对象,它有两个主要变量,它们都是字符串:“问题”和“答案”。

此对象的数据提供给应用程序,应用程序必须加载它们并将它们显示给用户。我有大约 10,000 个数据“点”以 .txt 中的行写成,每一行都是:“这是一个问题?//这是答案”。

我想创建一个 Python 脚本,将 .txt 分解为 10,000 个文件,这些文件可以在运行时由 ReactNative 方法读取。我想到了AsyncStorage.getItem,想问一下如何格式化这些文件,以便方法可以读取它们。

但我开始认为我需要使用 Expo.FileSystem.readAsStringAsync()。那正确吗?我宁愿使用 AsyncStorage.getItem 并立即解析文件...

【问题讨论】:

  • 你能举一个文本行的例子,以及你尝试过的代码片段吗?

标签: python react-native mobile


【解决方案1】:

AsyncStorage 不是您要找的东西。这是一个键值存储,它不能解决您的问题,因为您正在尝试使用已经存在的文本文件作为数据库可以这么说。 Expo 的内置解决方案Expo.FileSystem.readAsStringAsync() 似乎完全符合您的要求。可能有更多方法可以解决您的问题,但使用 Expo 的 API 是一个非常好的解决方案。

如果您想提高性能,我建议您使用实际数据库,因为您不需要将 txt 文件解析为适当的格式。您可以使用 SQLite 数据库并在应用程序首次启动时填充数据,类似于这种方法How can I embed an SQLite database into an application?。或者您可以调用远程 api,但这可能超出了您的范围。

【讨论】:

  • 马塞尔,你好!非常感谢您的回答。我将这些“10,000”文本文件与应用程序一起放在一个文件夹中,并尝试使用 readAsStringAsync() 读取它们。还没有成功(文档很差,这不是我的专长),但会继续努力。我也会考虑嵌入式数据库!这是一个好主意,我不知道这是可能的——你可能会大大提高性能。 :)
  • 我的意思是 AsyncStorage 基本上也是一个 SQLite 数据库,但我不知道您最初将如何填充它。
  • 我快疯了。我只是想用应用程序发送一些 .txt 文件并阅读它们......在 ReactNative 下,桌面上需要
  • 到目前为止你尝试过什么?完成后,请随意创建一个新问题并标记我
猜你喜欢
  • 2019-11-03
  • 1970-01-01
  • 2022-11-10
  • 1970-01-01
  • 2019-01-30
  • 2016-09-23
  • 2016-09-16
  • 1970-01-01
  • 2020-06-21
相关资源
最近更新 更多