java如何实现将一个记事本文件内容复制到另一个文件?

java如何实现将一个记事本文件内容复制到另一个文件?,第1张

import java.io.File\x0d\x0aimport java.io.FileInputStream\x0d\x0aimport java.io.FileNotFoundException\x0d\x0aimport java.io.FileOutputStream\x0d\x0aimport java.io.IOException\x0d\x0a\x0d\x0apublic class CopyMove {\x0d\x0a\x0d\x0a /**\x0d\x0a * @param args\x0d\x0a */\x0d\x0a public static void main(String[] args) {\x0d\x0a // TODO Auto-generated method stub\x0d\x0a CopyMove cm = new CopyMove()\x0d\x0a cm.copy("h:\\1.txt", "c:\\2.txt")\x0d\x0a cm.move("h:\\3.txt", "h:\\r\\e\\4.txt")\x0d\x0a }\x0d\x0a //文件复制前必须得到当前文件夹名字且要有\\x0d\x0a //当复制深层次路径时要用mkdirs方法\x0d\x0a public void copy(String path1,String path2){\x0d\x0a try {\x0d\x0a FileInputStream fis = new FileInputStream(path1)\x0d\x0a int l = fis.available()\x0d\x0a byte[] c = new byte[l]\x0d\x0a fis.read(c)\x0d\x0a fis.close()\x0d\x0a int i = path2.lastIndexOf("\\")+1\x0d\x0a System.out.println(i)\x0d\x0a String path = path2.substring(0, i)\x0d\x0a System.out.println(path)\x0d\x0a File f = new File(path)\x0d\x0a f.mkdirs()\x0d\x0a// System.out.println(f.getAbsolutePath())\x0d\x0a// System.out.println(f.isDirectory())\x0d\x0a FileOutputStream fos = new FileOutputStream(path2)\x0d\x0a fos.write(c)\x0d\x0a fos.close()\x0d\x0a System.out.println("文件复制成功")\x0d\x0a } catch (FileNotFoundException e) {\x0d\x0a // TODO Auto-generated catch block\x0d\x0a System.out.println("文件复制失败")\x0d\x0a } catch (IOException e) {\x0d\x0a // TODO Auto-generated catch block\x0d\x0a e.printStackTrace()\x0d\x0a }\x0d\x0a }\x0d\x0a \x0d\x0a public void move(String path1,String path2){\x0d\x0a try {\x0d\x0a FileInputStream fis = new FileInputStream(path1)\x0d\x0a int l = fis.available()\x0d\x0a byte[] c = new byte[l]\x0d\x0a fis.read(c)\x0d\x0a fis.close()\x0d\x0a int i = path2.lastIndexOf("\\")\x0d\x0a //System.out.println(i)\x0d\x0a String path = path2.substring(0, i)\x0d\x0a System.out.println(path)\x0d\x0a File f = new File(path)\x0d\x0a f.mkdirs()\x0d\x0a// System.out.println(f.getAbsolutePath())\x0d\x0a// System.out.println(f.isDirectory())\x0d\x0a FileOutputStream fos = new FileOutputStream(path2)\x0d\x0a fos.write(c)\x0d\x0a fos.close()\x0d\x0a System.out.println("文件移动成功")\x0d\x0a File f2 = new File(path1)\x0d\x0a f2.delete()\x0d\x0a } catch (FileNotFoundException e) {\x0d\x0a // TODO Auto-generated catch block\x0d\x0a System.out.println("文件移动失败")\x0d\x0a } catch (IOException e) {\x0d\x0a // TODO Auto-generated catch block\x0d\x0a e.printStackTrace()\x0d\x0a }\x0d\x0a }\x0d\x0a\x0d\x0a}

使用Java语言如何实现快速文件复制:

代码:

import java.io.File

import java.io.FileInputStream

import java.io.FileOutputStream

import java.io.IOException

import java.nio.channels.FileChannel

public class Test {

public static void main(String[] args){

long start = System.currentTimeMillis()

FileInputStream fileInputStream = null

FileOutputStream fileOutputStream = null

FileChannel inFileChannel = null

FileChannel outFileChannel = null

try {

fileInputStream = new FileInputStream(new File("C:\\from\\不是闹着玩的.flv"))

fileOutputStream = new FileOutputStream(new File("C:\\to\\不是闹着玩的.flv"))

inFileChannel = fileInputStream.getChannel()

outFileChannel = fileOutputStream.getChannel()

inFileChannel.transferTo(0, inFileChannel.size(), outFileChannel)//连接两个通道,从in通道读取数据写入out通道。

} catch (IOException e) {

e.printStackTrace()

} finally {

try {

if(fileInputStream != null){

fileInputStream.close()

}

if(inFileChannel != null){

inFileChannel.close()

}

if(fileOutputStream != null){

fileOutputStream.close()

}

if(outFileChannel != null){

outFileChannel.close()

}

} catch (IOException e) {

e.printStackTrace()

}

}

long end = System.currentTimeMillis()

System.out.println("视频文件从“from”文件夹复制到“to”文件需要" + (end - start) + "毫秒。")

}

}


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/tougao/8081616.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-13
下一篇 2023-04-13

发表评论

登录后才能评论

评论列表(0条)

保存