import io,,,,,,,

from https://pub.dev/packages/large_file_copy

Directory directory = await getApplicationDocumentsDirectory();
var dbPath = join(directory.path, "app.db");
if (FileSystemEntity.typeSync(dbPath) == FileSystemEntityType.notFound) {
ByteData data = await rootBundle.load("assets/my_db_file.db");
List<int> bytes = data.buffer.asUint8List(data.offsetInBytes, data.lengthInBytes);
await File(dbPath).writeAsBytes(bytes);
}
var file1 = File(join(tempDir.path, '0/2048.apk'));
var newFile = await file1.copy(join(tempDir.path, '4/1.apk'));
import 'package:flutter/material.dart';
import 'dart:io';
import 'dart:async';
import 'package:rxdart/rxdart.dart';
import 'package:path_provider/path_provider.dart';
import 'package:path/path.dart';
import 'package:permission_handler/permission_handler.dart';
import 'package:flutter/services.dart'; void main() => runApp(MaterialApp(home: MyApp(),)); /*
1. Copy aria2c executable to ``/mnt/sdcard`` on your device.
2. Run Android Terminal Emulator.
3. ``mkdir /data/data/jackpal.androidterm/aria2``
4. ``cat /mnt/sdcard/aria2c > /data/data/jackpal.androidterm/aria2/aria2c``
5. ``chmod 744 /data/data/jackpal.androidterm/aria2/aria2c``
6. Add the following commands to the initial command of Android
Terminal Emulator:: export HOME=/data/data/jackpal.androidterm/aria2; cd $HOME 7. Exit Android Terminal Emulator.
8. Run Android Terminal Emulator again.
9. See whether aria2c actually works by invoking ``./aria2c -v``
*/ class MyApp extends StatelessWidget {
DataBloc bloc; checkPermission()async{
var per = await PermissionHandler().checkPermissionStatus(PermissionGroup.storage);
if(per!=PermissionStatus.granted){
await PermissionHandler().requestPermissions([PermissionGroup.storage]);
}
} cp()async{
await checkPermission();
Directory tempDir = await getExternalStorageDirectory();
String workDir = join(tempDir.path, '4'); // var p = await Process.run('mkdir', [workDir]).then((ProcessResult e){
// print(e.stderr);
// print(e.exitCode);
// }); var file1 = await rootBundle.load('assets/aria2c');
var buf = file1.buffer;
File(join(workDir, 'xxx')).writeAsBytesSync(buf.asUint8List());
// var newFile = await file1.copy(join(tempDir.path, '4/1.apk'));
print('done');
} @override
Widget build(BuildContext context) {
return Scaffold(
appBar: AppBar(title: Text('sss'),),
body: Container(
child: Column(
mainAxisAlignment: MainAxisAlignment.center,
crossAxisAlignment: CrossAxisAlignment.center,
children: <Widget>[
RaisedButton(child: Text('mkdir'),onPressed: (){
cp();
},),
RaisedButton(child: Text('delete'),onPressed: (){ },),
Container(
width: 50,height: 50,child: Image(image: AssetImage('assets/img/a.png',),fit: BoxFit.cover,)),
// Container(
// width: 50, height: 50,child: Text(' '),decoration: BoxDecoration(
// image: DecorationImage(image: AssetImage('assets/img/a.png')),
// ),),
],
),
),
);
}
} class DataBloc {
ReplaySubject dataBloc = ReplaySubject();
} //void shell(String cmd, List<String> opts, void onExit(int exitCode))async{
// var p = await Process.start(cmd, opts);
// p.stdout.pipe(stdout);
// stdin.pipe(p.stdin);
// p.onExit = (exitCode)async{
// await p.kill();
// onExit(exitCode);
// }
//} //void shell(String cmd, List<String> opts, void onExit(int exitCode)) {
// var p = Process.start(cmd, opts);
// p.stdout.pipe(stdout); // Process output to stdout.
// stdin.pipe(p.stdin); // stdin to process input.
// p.onExit = (exitCode) {
// p.close();
// onExit(exitCode);
// };
//}

  

copy file的更多相关文章

  1. 解决编译报错:Unable to copy file, because it is being used by another process.

    Error    63    Unable to copy file "D:\DEV\XXX Website\trunk\4 Source Code\Common\WebControls\b ...

  2. VS2008 解决Unable to copy file 对路径的访问被拒绝。

    在VS2008 + WINDOWS 7 环境下重新生成解决方案时遇到以下问题 Unable to delete file "F:\XX.exe". 对路径"F:\XX.e ...

  3. Unable to copy file, Access to the path is denied

    Unable to copy file, Access to the path is denied http://stackoverflow.com/questions/7130136/unable- ...

  4. ansible copy file

    ansible xxxip  -m copy -a 'src=/localdir/file  dest=/sss/xxx/basic_search/bin/'

  5. ant copy file

    <project name="selftask" default="docopy" basedir="."> <descr ...

  6. copy file using FileReader/Writer.

    The code below demonstates copying file using 'FileReader' and 'FileWriter'. class CopyV2 extends Ti ...

  7. [每天解决一问题系列 - 0002] Xcopy cannot copy file with long directory

    现象: 当xcopy的文件的全名(包括目录和文件名)的长度超过255字符时,会copy失败,得到insufficient memory错误 解决方法: 在Server 版的OS中,有robcopy命令 ...

  8. copy file to docker from realhost

    http://blog.e3rp4y.me/blog/2014/05/23/copy-file-from-host-to-docker.html --------------------------- ...

  9. copy file to docker、

    Docker是个Linux Container管理软件. 今天我们来讲解一下从主机复制文件到Docker的几种方法. 在分享之前, 我们看看Docker社区对这个问题的需求是有多么强(ju)烈(jin ...

随机推荐

  1. PHP系列 | PDO::prepare(): send of 68 bytes failed with errno=32 Broken pipe

    设计场景 1.开启Redis的键空间过期事件(键过期发布任务),创建订单创建一个过期的key,按照订单号为key,设置过期时间. 2.通过Redis的订阅模式(持久阻塞),获取到订单号进行组装. 3. ...

  2. tornado多进程模式不同进程写不同日志

    #coding: utf- ''' Author: Time: Target: ''' import logging import logging.handlers import os import ...

  3. Curator框架实现ZooKeeper分布式锁

    排他锁(X) 这里主要讲讲分布式锁中的排他锁.排他锁(Exclusive Locks,简称X锁),又称为写锁或独占锁,是一种基本的锁类型.如果事务T1对数据对象O1加上了排他锁,那么在整个加锁期间,只 ...

  4. bootstrap Tab页切换

    <ul class="nav nav-tabs" id="otherInfoTab"> <li class="active" ...

  5. Linux如何将未分配的硬盘挂载出来

    情景说明 客户给了几台服务器,说500G硬盘,但到手操作的时候,使用命令查看,发现只有不到200的硬盘 [root@localhost ~]# df -h Filesystem Size Used A ...

  6. (mysql)找不到请求的.Net Framework Data Provider。可能没有安装

    webconfig配置以下节点(注意版本号) 将下面代码放在machine.config中文件,如何Web.config文件没有配置,需要添加 <system.data> <DbPr ...

  7. IfcBuildingElement

    IfcBuildingElement /* Generated By: IFC Tools Project EXPRESS TO JAVA COMPILER: Do not edit this fil ...

  8. 实例句柄0x10000000有什么特别之处?What is so special about the instance handle 0x10000000?

    当Load­Library函数返回特殊值时,客户想知道它意味着什么0x10000000.嗯,这意味着LIB被加载进了0x10000000?好的,这里有一些更多的信息:“我们正在尝试调试一个加载DLL的 ...

  9. bladex开发自己的服务不推送服务器的方法

    一:问题 使用代码生成器 生成的代码,运行后,需要推送至服务器才可以进行调试,每次推送,启动服务至少半个小时以上,相当浪费时间,如何可以让开发的服务不推送至服务器能调试呢? 二:尝试解决 直接开发机运 ...

  10. Redis面试大全

    1. 什么是Redis Redis是由意大利人Salvatore Sanfilippo(网名:antirez)开发的一款内存高速缓存数据库.Redis全称为:Remote Dictionary Ser ...