ios - 如何从 URI 获取文件 |博览会 | react native

标签 ios react-native filesystems expo

我已经弹出了世博会的项目。

更改 info.plist 后,现在我可以让我的应用程序出现在“使用应用程序列表打开”列表中,并且实际上可以使用我的 expo(React native 应用程序)打开该文件。

App.js

Linking.getInitialURL().then((url) => {
  if (url) {
        console.log(url);
    }

}).catch(err => console.error('An error occurred', err));

此代码为我提供了此 URL。

file:///private/var/mobile/Containers/Data/Application/7E55EB55-7C49-4C0C-B4CB-63AC4F49689E/Documents/Inbox/matters-3.csv

那么,这意味着现在我有了电子邮件附件的 URL,但我如何才能在我的应用程序中获取该 csv 字符串的数据?

所以我假设,当我点击打开我的应用程序时。从系统传递到我的应用程序的 URL 实际上是放置在我们应用程序目录中某处的文档的副本。

但是当我试图用 Expo.FileSystem 访问这个文件时。 readAsStringAsync 给我一个错误提示,文件不可读。

存储权限有什么关系吗?

需要帮助....?

最佳答案

我想你可以使用 react-native-fs .这在这里应该可以工作并将 CSV 文件的内容打印到控制台。

App.js

var RNFS = require('react-native-fs');

Linking.getInitialURL().then((url) => {
  if (url) {
    RNFS.readFile(url).then((data) => {
      console.log(data);
    }

}).catch(err => console.error('An error occurred', err));

关于ios - 如何从 URI 获取文件 |博览会 | react native ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53160752/

相关文章:

objective-c - Facebook 登录对话框不适用于 UIAlertView,但适用于 UIButton

react-native - 为什么 react native admob 在 RN<57.8 中不起作用

c++ - c++ 程序员应该了解 linux 文件系统上的哪些重要目录?

windows - 在 Windows 上,如何限制仅某些应用程序(而非用户)对文件夹、子文件夹和文件的访问

javascript - Swift 在应用程序终止时清除 webview 缓存

ios - 像 GrabCut 这样的图像分割算法可以在 iPhone GPU 上运行吗?

ios - 在后台安排的 UILocalNotification 不会触发

javascript - NativeBase 按钮​​不显示文本

javascript - 为什么 React Redux 中的 props 没有被映射状态更改为 props

linux - 使用没有文件系统的硬盘来处理大数据