6

我正在尝试使用react-native-fsreact-native-document picker将从文档选择器中选择的文件移动到文档目录。

但是,我收到以下错误:

Error: “file name.mp3” couldn’t be moved to “Documents” because either the former doesn't exist, or the folder containing the latter doesn't exist.

我究竟做错了什么?

仅供参考,我正在使用 iOS。

openDocumentPicker() {
  DocumentPicker.show({
    filetype: ['public.audio'],
  },(error,url) => {
    console.log(url);
    this.saveAudio(url);
  });

}

saveAudio(url) {

  var destPath = RNFS.DocumentDirectoryPath + '/' + 'name';

  RNFS.moveFile(url, destPath)
    .then((success) => {
      console.log('file moved!');
    })
    .catch((err) => {
      console.log("Error: " + err.message);
    });
}
4

2 回答 2

2

当目标文件夹不存在时,它发生在我身上。

[tid:com.facebook.react.JavaScript] 'error!', { [Error: The file “source.jpg” doesn’t exist.]

这是来自 的错误错误消息react-native-fs。它应该告诉目标路径文件夹不存在

于 2017-09-04T10:31:11.027 回答
2

我相信我已经找到了错误。问题是我上传的文件中有一个空格。我需要在上传之前先对 URL 进行解码,如下所示:

var decodedURL = decodeURIComponent(url)

然后我可以把文件移过来。

RNFS.copyFile(decodedURL, destPath)

于 2017-06-23T20:39:46.850 回答