「java等于复制」java文件的复制

博主:adminadmin 2022-11-30 11:56:07 94

本篇文章给大家谈谈java等于复制,以及java文件的复制对应的知识点,希望对各位有所帮助,不要忘了收藏本站喔。

本文目录一览:

java中 文件的复制

import java.io.FileInputStream;

import java.io.FileOutputStream;

import java.nio.channels.FileChannel;

public class TestTransfer {

public static void main(String[] args) throws Exception {

FileInputStream fis = new FileInputStream("c:\\abc.txt");

FileOutputStream fos = new FileOutputStream("c:\\123.txt");

FileChannel fc1 = fis.getChannel();

FileChannel fc2 = fos.getChannel();

fc2.transferFrom(fc1, 0, fc1.size());

fc1.close();

fc2.close();

fis.close();

fos.close();

}

}

这是最高效率速度最快的一种,使用时候要特别注意。

JAVA 如何复制

简单的方法,用 inputstream 把文件都进来

然后 用 outputstream 把文件写出去

或者使用 Runtime 调用系统命令行 copy(win) 或 cp(unix) 不过这样将牺牲java 的跨平台特性

还有 使用 jni,但是这种简单功能完全没有必要

推荐第一种,但是注意,当文件比较大时,应使用 读写缓冲区

bufferedreader 也是不错的选择

java中复制文件的两种方法是什么

第一种方法:古老的方式

public static long forJava(File f1,File f2) throws Exception{

long time=new Date().getTime();

int length=2097152;

FileInputStream in=new FileInputStream(f1);

FileOutputStream out=new FileOutputStream(f2);

byte[] buffer=new byte[length];

while(true){

int ins=in.read(buffer);

if(ins==-1){

in.close();

out.flush();

out.close();

return new Date().getTime()-time;

}else

out.write(buffer,0,ins);

}

}

方法的2参数分别是原始文件,和拷贝的目的文件.这里不做过多介绍.

实现方法很简单,分别对2个文件构建输入输出流,并且使用一个字节数组作为我们内存的缓存器, 然后使用流从f1 中读出数据到缓存里,在将缓存数据写到f2里面去.这里的缓存是2MB的字节数组

第2种方法:使用NIO中的管道到管道传输

public static long forTransfer(File f1,File f2) throws Exception{

long time=new Date().getTime();

int length=2097152;

FileInputStream in=new FileInputStream(f1);

FileOutputStream out=new FileOutputStream(f2);

FileChannel inC=in.getChannel();

FileChannel outC=out.getChannel();

int i=0;

while(true){

if(inC.position()==inC.size()){

inC.close();

outC.close();

return new Date().getTime()-time;

}

if((inC.size()-inC.position())20971520)

length=(int)(inC.size()-inC.position());

else

length=20971520;

inC.transferTo(inC.position(),length,outC);

inC.position(inC.position()+length);

i++;

}

}

实现方法:在第一种实现方法基础上对输入输出流获得其管道,然后分批次的从f1的管道中像f2的管道中输入数据每次输入的数据最大为2MB

java 里复制和粘贴的功能代码如何实现

1.

往剪切板写文本数据(就是常说的String拉)

Java代码

protected

static

void

setClipboardText(Clipboard

clip,

String

writeMe)

{

Transferable

tText

=

new

StringSelection(writeMe);

clip.setContents(tText,

null);

}

protected

static

void

setClipboardText(Clipboard

clip,

String

writeMe)

{

Transferable

tText

=

new

StringSelection(writeMe);

clip.setContents(tText,

null);

}

2.

从指定的剪切板中获取文本内容

Java代码

protected

static

String

getClipboardText(Clipboard

clip)

throws

Exception{

//

获取剪切板中的内容

Transferable

clipT

=

clip.getContents(null);

if

(clipT

!=

null)

{

//

检查内容是否是文本类型

if

(clipT.isDataFlavorSupported(DataFlavor.stringFlavor))

return

(String)clipT.getTransferData(DataFlavor.stringFlavor);

}

return

null;

}

关于java等于复制和java文件的复制的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。

The End

发布于:2022-11-30,除非注明,否则均为首码项目网原创文章,转载请注明出处。