精华内容
下载资源
问答
  • 今天小编就为大家分享一篇关于Java复制文件常用三种方法,小编觉得内容挺不错的,现在分享给大家,具有很好的参考价值,需要的朋友一起跟随小编来看看吧
  • IO流中复制文件方法多种多样,今天主要讲解一下一下四种常用复制文件方法,每个方法实现复制文件的效率都有所不同,以后在做项目中大家可以根据实际情况来决定使用哪复制方式来复制文件: 1. 字节流读写单个...

    IO流中复制文件的方法多种多样,今天主要讲解一下一下四种常用的复制文件的方法,每个方法实现复制文件的效率都有所不同,以后在做项目中大家可以根据实际情况来决定使用哪种复制方式来复制文件:
    1. 字节流读写单个字节
    2. 字节流读写字节数组
    3. 字节流缓冲区读写单个字节
    4. 字节流缓冲区读写字节数组

    第一种:用字节流读取单个文件的方式
    public static void copy_1(){
    FileInputStream fis = null;
    FileOutputStream fos = null;
    try{
    fis = new FileInputStream(“c:\tools.jar”);
    fos = new FileOutputStream(“d:\tools.jar”);
    int len = 0 ;
    while((len = fis.read())!=-1){
    fos.write(len);
    }
    }catch(IOException ex){
    ex.printStackTrace();
    throw new RuntimeException(“复制失败”);
    }finally{
    try{
    if(fos!=null)
    fos.close();
    }catch(IOException ex){
    throw new RuntimeException(“资源关闭失败”);
    }finally{
    try{
    if(fis!=null)
    fis.close();
    }catch(IOException ex){
    throw new RuntimeException(“资源关闭失败”);
    }
    }
    }
    }

    第二种:字节流读写字节数组

    public static void copy_2(){
    FileInputStream fis = null;
    FileOutputStream fos = null;
    try{
    fis = new FileInputStream(“c:\tools.jar”);
    fos = new FileOutputStream(“d:\tools.jar”);
    byte[] bytes = new byte[1024];
    int len = 0 ;
    while((len = fis.read(bytes))!=-1){
    fos.write(bytes, 0, len);
    }
    }catch(IOException ex){
    ex.printStackTrace();
    throw new RuntimeException(“复制失败”);
    }finally{
    try{
    if(fos!=null)
    fos.close();
    }catch(IOException ex){
    throw new RuntimeException(“资源关闭失败”);
    }finally{
    try{
    if(fis!=null)
    fis.close();
    }catch(IOException ex){
    throw new RuntimeException(“资源关闭失败”);
    }
    }
    }
    }

    第三种:字节流缓冲区读写单个字节

    public static void copy_3(){
    BufferedInputStream bis = null;
    BufferedOutputStream bos = null;
    try{
    bis = new BufferedInputStream(new FileInputStream(“c:\tools.jar”));
    bos = new BufferedOutputStream(new FileOutputStream(“d:\tools.jar”));
    int len = 0 ;
    while((len = bis.read())!=-1){
    bos.write(len);
    }
    }catch(IOException ex){
    ex.printStackTrace();
    throw new RuntimeException(“复制失败”);
    }finally{
    try{
    if(bos!=null)
    bos.close();
    }catch(IOException ex){
    throw new RuntimeException(“资源关闭失败”);
    }finally{
    try{
    if(bis!=null)
    bis.close();
    }catch(IOException ex){
    throw new RuntimeException(“资源关闭失败”);
    }
    }
    }
    }

    第四种:字节流缓冲区读写字节数组
    public static void copy_4(){
    BufferedInputStream bis = null;
    BufferedOutputStream bos = null;
    try{
    bis = new BufferedInputStream(new FileInputStream(“c:\tools.jar”));
    bos = new BufferedOutputStream(new FileOutputStream(“d:\tools.jar”));
    int len = 0 ;
    byte[] bytes = new byte[1024];
    while((len = bis.read(bytes))!=-1){
    bos.write(bytes,0,len);
    }
    }catch(IOException ex){
    ex.printStackTrace();
    throw new RuntimeException(“复制失败”);
    }finally{
    try{
    if(bos!=null)
    bos.close();
    }catch(IOException ex){
    throw new RuntimeException(“资源关闭失败”);
    }finally{
    try{
    if(bis!=null)
    bis.close();
    }catch(IOException ex){
    throw new RuntimeException(“资源关闭失败”);
    }
    }
    }
    }
    以上四种方法,经实际测试,第二和第四中方法复制文件的速度要明显快于其他两种,应为它是以数组为单位进行复制文件的,而其他两种都是以单个字节的方式来进行复制的,所以会慢一些,以后玩文件复减一还是用第二和第四种文件复制的方式吧.

    展开全文
  • 2.复制当前目录下的文件 到 ~/workdpsvr/Lib sudo cp xxx /home/hduser 此处不能用~,因为是超级管理员 3.修改权限 sudo chown hduser:hduser /home/hduser/workspace/Lib/spark-assembly-1.4....

    由于liunx普通用户权限问题,无法访问共享文件夹。

    1.进入超级管理员
    sudo -i
    2.复制当前目录下的文件 到 ~/workdpsvr/Lib
    sudo cp xxx /home/hduser 
    此处不能用~,因为是超级管理员
    3.修改权限
    sudo chown hduser:hduser  /home/hduser/workspace/Lib/spark-assembly-1.4.0-hadoop2.6.0.jar 
     

    展开全文
  • 封装了包括所有常用的文件操作方法如:读文件,写文件,查看文件夹大小,树状展示文件夹中文件目录,拷贝文件,复制文件,删除文件,创建文件,递归删除文件夹中文件,获取指定文件属性
  • 批量复制文件2. 批量解压文件3. 批量重命名文件后缀4. 解决Win10局域网共享问题(未测试) 1. 批量复制文件 创建文件copy_file.bat,内容如下,保存为ANSI编码,否则中文会乱码: @echo off & color 0A :: 指定...

    内容转载自我的博客

    1. 批量复制文件

    创建文件copy_file.bat,内容如下,保存为ANSI编码,否则中文会乱码:

    @echo off & color 0A
    :: 指定起始文件夹:需要将此bat文件放在这些文件夹的同级
    set DIR="%cd%"
    echo 当前目录为:%DIR%
    set src_dir=C:\Users\zfb\Desktop\test\
    set name1=%src_dir%a.txt
    set name2=%src_dir%b.txt
    
    for /f "delims=" %%i in ('dir /ad /b /s "%DIR%"') do (
        echo 正在复制文件%name1%到文件夹%%i
        copy %name1% %%i
        echo 正在复制文件%name2%到文件夹%%i
        copy %name2% %%i
        md %%i\dir_new
    )
    pause
    

    或者直接下载蓝奏云文件,双击即可实现功能。具体功能解释:目标文件夹的结构以及.bat文件放置如下:

    |--test
    |------copy_files.bat
    |------file01
    |------dir01
    |----------dir01A
    |----------dir01B
    |------dir02
    |----------dir01A
    |----------dir01B
    |----------dir01C
    |------dir03
    |----------file01
    

    要将这两个文件C:\Users\zfb\Desktop\test\a.txt、C:\Users\zfb\Desktop\test\b.txt复制到目标文件夹及其每个子目录下,另外再新建一个目录dir_new,最后效果如下:

    |--test
    |------copy_files.bat
    |------file01
    |------dir01
    |----------a.txt
    |----------b.txt
    |----------dir_new
    |----------dir01A
    |--------------a.txt
    |--------------b.txt
    |--------------dir_new
    |----------dir01B
    |--------------a.txt
    |--------------b.txt
    |--------------dir_new
    |------dir02
    |----------a.txt
    |----------b.txt
    |----------dir_new
    |----------dir01A
    |--------------a.txt
    |--------------b.txt
    |--------------dir_new
    |----------dir01B
    |--------------a.txt
    |--------------b.txt
    |--------------dir_new
    |----------dir01C
    |--------------a.txt
    |--------------b.txt
    |--------------dir_new
    |------dir03
    |----------a.txt
    |----------b.txt
    |----------dir_new
    |----------file01
    

    2. 批量解压文件

    经常会遇到下载的原始数据是按照特定规律的许多压缩包,它们可能分布在不同的文件夹下面,但是文件的扩展名是一致的。如果想要将每个压缩包解压到其所在的当前文件夹覆盖已经解压过的文件(方便程序异常退出后重新运行)、删除解压成功的压缩包保留解压失败的压缩包及其路径等操作,则可以新建unzip_all_files.bat文件,内容如下:

    @echo off
    set WinRAR="C:\Program Files\WinRAR\WinRAR.exe"
    set log_name="\log.txt"
    set log=%cd%%log_name%
    for /r . %%a in (*.rar *.zip *.Z *.gz) do ( 
        cd "%%~pa" 
        rem auto replace files that exists
        rem x : extract
        rem -o+ : cover mode
        rem -ilog : error msg to file
        rem -inul : do not display error window
        rem -iback : run in the background
        rem -mt : thread num
        %WinRAR% x -o+ -ilog%log% -inul -iback -mt12 "%%a"
        rem last command run successfully
        if %errorlevel% == 0 (
            rem delete compress file
            del "%%a"
        )
    )
    

    或者直接下载蓝奏云文件,双击即可实现功能

    3. 批量重命名文件后缀

    新建文件rename_suffix.bat,内容如下:

    ren *.7z *.zip
    

    双击此文件,即可将当前目录下的所有.7z文件的扩展名修改为.zip

    4. 解决Win10局域网共享问题(未测试)

    创建文件fix_lan_share.bat,内容如下:

    @echo off
    >nul 2>&1 "%SYSTEMROOT%\system32\cacls.exe" "%SYSTEMROOT%\system32\config\system"
    setlocal enabledelayedexpansion
    echo.
    ver | find "10." > NUL && goto win10
     
    :error
    mshta vbscript:msgbox(" 脚本只适用Win10系统",vbSystemModal+64,"警告")(window.close) 
    exit
     
    :win10
    ::改写组策略
    echo Windows Registry Editor Version 5.00 >%temp%\smb.reg
    echo. >> %temp%\smb.reg
    echo [HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\LanmanWorkstation] >> %temp%\smb.reg
    echo @=""  >> %temp%\smb.reg
    echo "AllowInsecureGuestAuth"=dword:00000001 >> %temp%\smb.reg
    regedit /s %temp%\smb.reg
     
    echo 添加smb访问组件
    dism /online /format:table /get-features
    dism /online /enable-feature /featurename:SMB1Protocol
     
    mshta vbscript:msgbox(" 设置完成。电脑重启后生效!",vbSystemModal+64,"注意")(window.close) 
     
    exit
    

    或者直接下载蓝奏云文件,双击即可实现功能

    展开全文
  • Linux常用命令之——复制文件cp

    千次阅读 2018-05-08 21:06:00
    cp命令用来将一个或多个源文件或者目录复制到指定的目的文件或目录。它可以将单个源文件复制成一个指定文件名的具体的文件或一个已经存在的目录下。cp命令还支持同时复制多个文件,当一次复制多个文件时,目标文件...

    cp命令用来将一个或多个源文件或者目录复制到指定的目的文件或目录。它可以将单个源文件复制成一个指定文件名的具体的文件或一个已经存在的目录下。cp命令还支持同时复制多个文件,当一次复制多个文件时,目标文件参数必须是一个已经存在的目录,否则将出现错误。

    语法

    cp(选项)(参数)

    选项

    -a:此参数的效果和同时指定"-dpR"参数相同;
    -d:当复制符号连接时,把目标文件或目录也建立为符号连接,并指向与源文件或目录连接的原始文件或目录;
    -f:强行复制文件或目录,不论目标文件或目录是否已存在;
    -i:覆盖既有文件之前先询问用户;
    -l:对源文件建立硬连接,而非复制文件;
    -p:保留源文件或目录的属性;
    -R/r:递归处理,将指定目录下的所有文件与子目录一并处理;
    -s:对源文件建立符号连接,而非复制文件;
    -u:使用这项参数后只会在源文件的更改时间较目标文件更新时或是名称相互对应的目标文件并不存在时,才复制文件;
    -S:在备份文件时,用指定的后缀“SUFFIX”代替文件的默认后缀;
    -b:覆盖已存在的文件目标前将目标文件备份;
    -v:详细显示命令执行的操作。

    参数

    • 源文件:制定源文件列表。默认情况下,cp命令不能复制目录,如果要复制目录,则必须使用-R选项;
    • 目标文件:指定目标文件。当“源文件”为多个文件时,要求“目标文件”为指定的目录。

    实例

    如果把一个文件复制到一个目标文件中,而目标文件已经存在,那么,该目标文件的内容将被破坏。此命令中所有参数既可以是绝对路径名,也可以是相对路径名。通常会用到点.或点点..的形式。例如,下面的命令将指定文件复制到当前目录下:

    cp ../mary/homework/assign .

    所有目标文件指定的目录必须是己经存在的,cp命令不能创建目录。如果没有文件复制的权限,则系统会显示出错信息。

    将文件file复制到目录/usr/men/tmp下,并改名为file1

    cp file /usr/men/tmp/file1

    将目录/usr/men下的所有文件及其子目录复制到目录/usr/zh

    cp -r /usr/men /usr/zh

    交互式地将目录/usr/men中的以m打头的所有.c文件复制到目录/usr/zh

    cp -i /usr/men m*.c /usr/zh

    我们在Linux下使用cp命令复制文件时候,有时候会需要覆盖一些同名文件,覆盖文件的时候都会有提示:需要不停的按Y来确定执行覆盖。文件数量不多还好,但是要是几百个估计按Y都要吐血了,于是折腾来半天总结了一个方法:

    cp aaa/* /bbb
    复制目录aaa下所有到/bbb目录下,这时如果/bbb目录下有和aaa同名的文件,需要按Y来确认并且会略过aaa目录下的子目录。
    
    cp -r aaa/* /bbb
    这次依然需要按Y来确认操作,但是没有忽略子目录。
    
    cp -r -a aaa/* /bbb
    依然需要按Y来确认操作,并且把aaa目录以及子目录和文件属性也传递到了/bbb。
    
    \cp -r -a aaa/* /bbb
    成功,没有提示按Y、传递了目录属性、没有略过目录。
    展开全文
  • cp 复制文件

    千次阅读 2018-12-18 20:20:17
    cp 源文件 目标文件 把给出的目录/文件复制到另外目标的目录/文件 二、常用选项 序号 参数 含义 01 -f 对于已存在的文件,直接覆盖,不会提示 02 -i 覆盖文件前,进行提示 03 -r 递归复制目录下所有...
  • 对于一些常用方法,如果每次都去baidu,感觉太麻烦了,所以从现在起,每次都要把自己感觉有用的方法总结一下,既为了加深印象,也为了下次查找方便。 1 在本地或共享盘中复制文件 File file = new File("D:/...
  • 1. 文件复制:cp命令,即copy 该命令的功能是将给出的文件或目录拷贝到另一文件或目录中  语法:cp [选项] 源文件或目录 目标文件或目录 常用选项: - a 该选项通常在拷贝目录时使用。它保留链接、文件属性...
  • 功能介绍:将一个文件复制至另一个文件,或将数个文件复制至另一目录。 语法格式:  cp [options] source dest  cp [options] source... directory 常用参数说明:  -a 尽可能将档案状态、权限等资料都照...
  • uid=2272&id=37363 ...指令名称:cp(copy)功能介绍:将一个文件复制至另一个文件,或将数个文件复制至另一目录。语法格式: cp [options] source dest cp [options] source... directory常用...
  • 文件复制操作也是文件处理过程中常用的操作,文件复制比较简单,File类中提供了很多方法,这里只实例演示File.Copy()的用法,其代码如下: string pLocalFilePath ="";//要复制文件路径 string pSaveFilePath =...
  • 文件常用方法 c# 1614531951 方法 用法 File.方法名(参数) 文件是否存在 复制操作 移动文件 删除文件 注,删除文件是永久删除,不会进回收站
  • 本文大家整理了一些比较好用的关于python分割文件方法方法非常的简单实用。分享给大家供大家参考。具体如下: 例子1 指定分割文件大小 配置文件 config.ini: 复制代码 代码如下:[global] #原文件存放目录 dir1=...
  • 上传文件或目录到hdfshadoop dfs -put hello / hadoop dfs -put hellodir/ / 查看目录 hadoop dfs -ls / 创建一个空文件 hadoop dfs -touchz /wahaha 删除一个文件 hadoop dfs -rm /wahaha 删除一个目录 hadoop
  • linux文件拷贝常用方法

    千次阅读 2018-01-25 18:12:44
    不同的Linux之间copy文件常用有3种方法:  第一种就是ftp,也就是其中一台Linux安装ftp Server,这样可以另外一台使用ftp的client程序来进行文件的copy。...第三种就是利用scp命令来进行文件复制。  
  • linux下文件复制、移动与删除命令为:cp,mv,rm 一、文件复制命令cp 命令格式:cp [-adfilprsu] 源文件(source) 目标文件(destination) cp [option] source1 source2 source3 … directory 参数说明: -...
  • HDFS常用命令:  path 为路径 src为文件路径 dist 为文件夹  1、-help[cmd] 显示命令的帮助信息./hdfs dfs -help ls· 12、-ls® 显示当前目录下的所有文件 -R层层循出文件夹./hdfs dfs -ls&...
  • 一:用int来一个字节一个字节复制文件 /**复制一个文件到另一个目录 * @param oldPath 原文件 * @param newPath 复制文件 * @throws IOException */ public static void copyFileByI...
  • rcp命令 远程文件复制

    2021-01-09 20:37:40
    rcp指令用在远端复制文件或目录,如同时指定两个以上的文件或目录,且最后的目的地是一个已经存在的目录,则它会把前面指定的所有文件或目录复制到该目录中。 rcp命令默认系统没有安装,需要安装rsh和rsh-server这2...
  • (copyfile)复制粘贴文件三种方式

    千次阅读 2019-03-20 20:49:22
    一:复制粘贴(从一个文本文件或其他,粘贴到另一个文件上) 二:file的操作 :File file=new File(“文件的位置”); line :bufferreader char: filereader byte: fileinputstream 1:byte /* 这是一个可以传...
  • C#常用文件操作方法File类命名空间:System.IO 序号  函数名称  描述   1  AppendAllText  将指定的字符串追加到文件中,如果文件还不存在则创建该文件。   2  AppendText  创建一个...
  • 在java开发中,经常会碰到文件复制的问题。最常用的方式是利用byte数组来完成,如下: final int MAX_BUFFER_LENGTH = 1024; FileOutputStream fos = new FileOutputStream(destFile); FileInputStream fis = new ...
  • 常用开发工具类文件复制,日志打印,图片处理,toast.rar,太多无法一一验证是否可用,程序如果跑不起来需要自调,部分代码功能进行参考学习。
  • vim常用配置文件下载

    2019-05-21 10:32:49
    我自己的vim配置文件,包括常用的代码不全,git提示,nerdtree,taglist等。 复制到根目录下重命名为.vimrc
  • 主要介绍了C#封装的常用文件操作类,实例分析了C#文件操作的技巧,涉及C#的读写、复制、删除等常用操作,非常具有实用价值,需要的朋友可以参考下

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 513,880
精华内容 205,552
关键字:

常用的复制文件的三种方法