使用 react-native-fs 将文件从 tmp 移动到文档

Move file from tmp to documents using react-native-fs

我正在尝试使用 react-native-fs and react-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);
    });
}

我想我已经找到了错误。问题是我上传的文件中有一个 space。我需要在上传之前先解码 URL,像这样:

var decodedURL = decodeURIComponent(url)

那我就可以把文件移过去了

RNFS.copyFile(decodedURL, destPath)

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

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

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