Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/flutter/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Flutter 如何在flatter中创建目录_Flutter - Fatal编程技术网

Flutter 如何在flatter中创建目录

Flutter 如何在flatter中创建目录,flutter,Flutter,我想下载图像并使用dio和path_provider将其保存到一个唯一的目录名中。但我有一个错误: I/flutter (15977): FileSystemException: Cannot open file, path = '/data/user/0/com.manga.indonesia.manga.suka/app_flutter/sensei-wa-koi-o-oshie-rarenai-chapter-7-bahasa-indonesia/0.jpg' 我怎样才能制作这个唤醒-

我想下载图像并使用dio和path_provider将其保存到一个唯一的目录名中。但我有一个错误:

I/flutter (15977): FileSystemException: Cannot open file, 
path = '/data/user/0/com.manga.indonesia.manga.suka/app_flutter/sensei-wa-koi-o-oshie-rarenai-chapter-7-bahasa-indonesia/0.jpg'
我怎样才能制作这个
唤醒-wa-koi-o-oshie-rarenai-chapter-7-bahasa-indonesia
目录

我的代码:

下载章节(章节)异步{
反应物;
Dio Dio=新的Dio();
var dir=等待getApplicationDocumentsDirectory();
试一试{
res=等待dio
.get('http://0.0.0.0:8080/api/MangaSuka/kchapters/"(第1章),;
var contentChapter=res.data['content'],其中((a){
返回一个!=null;
}).toList();
for(var i=0;i
以下章节对此进行了详细说明:

但是,在许多情况下,例如创建一个目录,directory.create的异步(默认)版本可能不会节省时间,并且可能会导致争用情况。在这种情况下,使用命令的同步版本更合适:

new Directory('sensei-wa-koi-o-oshie-rarenai-chapter-7-bahasa-indonesia').createSync()
// ... following sequential code
值得注意的是,许多dart::io方法都有*同步版本。

import'package:path\u provider\u ex/path\u provider\u ex.dart';
import 'package:path_provider_ex/path_provider_ex.dart';
import 'dart:io';
import 'package:simple_permissions/simple_permissions.dart';
//packages
//  simple_permissions: ^0.1.9
//  path_provider_ex:
//Android mainfest 
//  <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
 //   <uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE"/>
main(){
  List<StorageInfo> _storageInfo = [];

  @override
  void initState() {
    super.initState();
    initPlatformState();
    Timer(Duration(seconds: 2), () {
      createFolder();
    });
  }
  createFolder() async {
    PermissionStatus permissionResult =
        await SimplePermissions.requestPermission(
            Permission.WriteExternalStorage);
    if (permissionResult == PermissionStatus.authorized) {
    //   Directory _appFile = Directory(_storageInfo[0].rootDir + '/MyTestFOlder');
    // _appFile.create();
     new Directory(_storageInfo[0].rootDir + '/MyCreatedFolder').create()
    // The created directory is returned as a Future.
    .then((Directory directory) {
      print(directory.path);
  });
      // File ourTempFile = File(_appFile.path);
      // print(ourTempFile.path);
     // ourTempFile.create();
      // code of read or write file in external storage (SD card)
    }
  }
}
导入“dart:io”; 导入“package:simple_permissions/simple_permissions.dart”; //包裹 //简单权限:^0.1.9 //路径\提供者\示例: //安卓mainfest // // main(){ 列表_storageInfo=[]; @凌驾 void initState(){ super.initState(); initPlatformState(); 计时器(持续时间(秒数:2),(){ createFolder(); }); } createFolder()异步{ 许可状态许可结果= 等待SimplePermissions.requestPermission( 权限。WriteExternalStorage); if(permissionResult==PermissionStatus.authorized){ //目录_appFile=Directory(_storageInfo[0].rootDir+'/MyTestFOlder'); //_appFile.create(); 新目录(_storageInfo[0].rootDir+'/MyCreatedFolder')。create() //创建的目录将作为将来的目录返回。 .then((目录){ 打印(directory.path); }); //File ourTempFile=File(_appFile.path); //打印(ourTempFile.path); //创建(); //外部存储器(SD卡)中读取或写入文件的代码 } } }
虽然此代码可以回答问题,但提供有关如何和/或为什么解决问题的附加上下文将提高答案的长期价值。
import 'package:path_provider_ex/path_provider_ex.dart';
import 'dart:io';
import 'package:simple_permissions/simple_permissions.dart';
//packages
//  simple_permissions: ^0.1.9
//  path_provider_ex:
//Android mainfest 
//  <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
 //   <uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE"/>
main(){
  List<StorageInfo> _storageInfo = [];

  @override
  void initState() {
    super.initState();
    initPlatformState();
    Timer(Duration(seconds: 2), () {
      createFolder();
    });
  }
  createFolder() async {
    PermissionStatus permissionResult =
        await SimplePermissions.requestPermission(
            Permission.WriteExternalStorage);
    if (permissionResult == PermissionStatus.authorized) {
    //   Directory _appFile = Directory(_storageInfo[0].rootDir + '/MyTestFOlder');
    // _appFile.create();
     new Directory(_storageInfo[0].rootDir + '/MyCreatedFolder').create()
    // The created directory is returned as a Future.
    .then((Directory directory) {
      print(directory.path);
  });
      // File ourTempFile = File(_appFile.path);
      // print(ourTempFile.path);
     // ourTempFile.create();
      // code of read or write file in external storage (SD card)
    }
  }
}