爸爸为 React Native 解析 CSV
Papa Parse CSV for React Native
使用 PapaParse,我正在尝试解析位于 iOS 设备本地的 CSV。下面的示例代码非常简单,只是它不采用文件路径。我确实有本地文件的路径,但我不确定如何正确插入它来代替 fileInput.files[0]
。我尝试使用 File() 从路径创建文件但无法到达任何地方。我如何解析本地 csv,使用 PapaParse 响应本机?
Papa.parse(fileInput.files[0], {
complete: function(results) {
console.log(results);
}
});
更新:您必须先导入文件,就像导入组件一样。
import myDataset from '../path/to/myDataset.csv';
然后你将使用 myDataset 作为你的文件来下载 Papa.parse 像这样...
Papa.parse(myDataset, {
download: true,
delimiter: '\t'
complete: function(results) {
console.log(results);
}
});
将 download
的配置值指定为 true。
根据 Papa Parse 文档,应自动检测定界符。
只是添加到@pnizzle 上面的答案。
出于某种原因,只要图像文件位于您的 React Native 项目目录中,您就可以使用当前 js 文件的相对路径访问图像文件。
对于 CSV 文件,我必须将它们与我的 iOS 项目捆绑在一起(我将文件分组在一个 Assets 文件夹中),然后使用 RNFS 获取我的 MainBundleDirectory 的路径并从那里访问我的 .CSV 文件。
希望这对处于类似困境的其他人有所帮助。
var mainBundlePath = RNFS.MainBundlePath;
var path = '/Assets/CSVData.csv';
Papa.parse(mainBundlePath+path, {
download: true,
delimiter: '\t',
complete: function(results) {
console.log('This is ME..');
console.log(results);
}
});
使用 PapaParse,我正在尝试解析位于 iOS 设备本地的 CSV。下面的示例代码非常简单,只是它不采用文件路径。我确实有本地文件的路径,但我不确定如何正确插入它来代替 fileInput.files[0]
。我尝试使用 File() 从路径创建文件但无法到达任何地方。我如何解析本地 csv,使用 PapaParse 响应本机?
Papa.parse(fileInput.files[0], {
complete: function(results) {
console.log(results);
}
});
更新:您必须先导入文件,就像导入组件一样。
import myDataset from '../path/to/myDataset.csv';
然后你将使用 myDataset 作为你的文件来下载 Papa.parse 像这样...
Papa.parse(myDataset, {
download: true,
delimiter: '\t'
complete: function(results) {
console.log(results);
}
});
将 download
的配置值指定为 true。
根据 Papa Parse 文档,应自动检测定界符。
只是添加到@pnizzle 上面的答案。
出于某种原因,只要图像文件位于您的 React Native 项目目录中,您就可以使用当前 js 文件的相对路径访问图像文件。
对于 CSV 文件,我必须将它们与我的 iOS 项目捆绑在一起(我将文件分组在一个 Assets 文件夹中),然后使用 RNFS 获取我的 MainBundleDirectory 的路径并从那里访问我的 .CSV 文件。
希望这对处于类似困境的其他人有所帮助。
var mainBundlePath = RNFS.MainBundlePath;
var path = '/Assets/CSVData.csv';
Papa.parse(mainBundlePath+path, {
download: true,
delimiter: '\t',
complete: function(results) {
console.log('This is ME..');
console.log(results);
}
});