I'm pretty new to dart/flutter, so let me know if there is anything I can clarify. I'm trying to download a file, but when I try to access it, I get the error
FileSystemException: Cannot open file, path = './data.csv' (OS Error: Read-only file system, errno = 30)
What am I doing wrong, and how can I fix this?
downloadTextFile() {
HttpClient client = new HttpClient();
client.getUrl(Uri.parse('I put the link I used here, but it is sort of long'))
.then((HttpClientRequest request) {
return request.close();
})
.then((HttpClientResponse response) {
response.pipe(new File('./data.csv').openWrite());
});
readFileByLines();
}
void readFileByLines() {
File file = new File('./data.csv');
List<String> lines = file.readAsLinesSync();
lines.forEach((l) => print(l));
}
You can use package https://pub.dev/packages/path_provider
And write your file to tempPath
or appDocPath
Directory tempDir = await getTemporaryDirectory();
String tempPath = tempDir.path;
Directory appDocDir = await getApplicationDocumentsDirectory();
String appDocPath = appDocDir.path;
For Android , In AndroidManifest.xml
, you can add permission
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE"/>
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With