java文件拷貝文件
❶ 利用java語言編寫一個 名為的程序 實現文件的拷貝功能,應該怎樣做
import java.io.File;x0dx0aimport java.io.FileInputStream;x0dx0aimport java.io.FileNotFoundException;x0dx0aimport java.io.FileOutputStream;x0dx0aimport java.io.IOException;x0dx0apublic class Copy {x0dx0a/**x0dx0a* @param argsx0dx0a*/x0dx0apublic static void main(String[] args) {x0dx0a// TODO Auto-generated method stubx0dx0aif(args.length!=2){x0dx0aSystem.out.print("沒有輸孫並入正確數目的參數,程序退出!");x0dx0aSystem.exit(0);x0dx0a}x0dx0aFile fileS = new File("./"+args[0]);x0dx0aFile fileD = new File("./蔽此"+args[1]);x0dx0aif(fileD.exists())System.out.println("目標文件 "+args[1]+" 已存在!");x0dx0abyte[] temp = new byte[50];x0dx0aint totalSize = 0;x0dx0atry {x0dx0aFileInputStream fr = new FileInputStream(fileS);x0dx0aFileOutputStream fo = new FileOutputStream(fileD);x0dx0aint length = 0;x0dx0awhile((length = fr.read(temp, 0, temp.length)) != -1){x0dx0atotalSize += length;x0dx0afo.write(temp, 0, length);x0dx0a}x0dx0aSystem.out.println("文件 "+args[0]+" 有 "+totalSize+" 個位元組");x0dx0aSystem.out.println("復制完成!");x0dx0a} catch (FileNotFoundException e) {x0dx0a// TODO Auto-generated catch blockx0dx0ae.printStackTrace();x0dx0aSystem.out.println("源宏凱迅文件 "+args[0]+" 不存在!");x0dx0a} catch (IOException e) {x0dx0a// TODO Auto-generated catch blockx0dx0ae.printStackTrace();x0dx0a}x0dx0a}x0dx0a}
❷ 怎樣用Java復制文件到指定目錄 在線等,急!!!!
藉助工具包commons-io.jar
import java.io.File;
import java.io.IOException;
import org.apache.commons.io.FileUtils;
public class Admin {
public static void main(String[] args) {
File from = new File("d:/a");
File to = new File("d:/b");
try {
FileUtils.Directory(from, to);
} catch (IOException e) {
e.printStackTrace();
}
}
}
❸ JAVA實現文件轉移
Java代碼
/**
* // 從舊文件拷貝內容到新文件
* // 刪除舊文件
* @param oldPath the path+name of old file
* @param newPath the path+name of new file
* @throws Exception
*/
信橋private void transferFile(String oldPath String newPath) throws Exception {
int byteread = ;
File oldFile = new File(oldPath);
FileInputStream fin = null;
FileOutputStream fout = null;
try{
if(oldFile exists()){
fin = new FileInputStream(oldFile);
fout = new FileOutputStream(newPath);
byte[] buffer = new byte[ ];
while( (byteread = fin read(buffer)) != ){
logger debug( byteread== +byteread);
fout write(buffer byteread);
}
if(fin != null){
fin close();//如果流不關閉 則刪除不雹叢了舊文件
this delFile(oldFile);
}
}else{
throw new Exception( 需要轉移的文件不存在! );
}
}catch(Exception e){
e printStackTrace();
throw e;
}finally{
if(fin != null){
fin close();
}
}
}
/**
* 刪除文件 只支持刪除文件 不支持刪除目錄
* @param file
* @throws Exception
*/
private void delFile(File file) throws Exception {
if(!file exists()) {
throw new Exception( 文件 +file getName()+ 不存在 請確認! );
}
if(file isFile()){
if(file canWrite()){
file delete();
}else{
throw new Exception( 文件 +file getName()+ 只讀 無法刪除 請手動刪除! );
}
}else{
throw new Exception( 文件 +file getName()+ 不是一個標準的文件 有可能為源坦櫻目錄 請確認! );
}
lishixin/Article/program/Java/hx/201311/25584
❹ Java怎麼實現文件拷貝
工具/原料
一台配置了java環境的電腦
一款適合自己的開發集成環境,這里用的是eclipse Kepler
文件拷貝DEMO
1.首先,理清思路,然後我們再動手操作。
拷貝,有源文件,和目的文件。
如果原文件不存在,提示,報錯。
如果目的文件不存在,創建空文件並被覆蓋。
如果目的地址,也即目的路徑不存在,創建路徑。
拷貝,輸入流,輸出流,關閉流。
拷貝前輸出文件大小,計算拷貝大小,比較並核實。輸出。
❺ java如何拷貝文件到另一個目錄下
/**
*
復制單個文件
*
@param
oldPath
String
原文件路徑
如:c:/fqf.txt
*
@param
newPath
String
復制後路徑
如:f:/fqf.txt
*
@return
boolean
*/
public
void
File(String
oldPath,
String
newPath)
{
try
{
int
bytesum
=
0;
int
byteread
=
0;
File
oldfile
=
new
File(oldPath);
if
(oldfile.exists())
{
//文件存在時
InputStream
inStream
=
new
FileInputStream(oldPath);
//讀入原文件
FileOutputStream
fs
=
new
FileOutputStream(newPath);
byte[]
buffer
=
new
byte[1444];
int
length;
while
(
(byteread
=
inStream.read(buffer))
!=
-1)
{
bytesum
+=
byteread;
//位元組數
文件大小
System.out.println(bytesum);
fs.write(buffer,
0,
byteread);
}
inStream.close();
}
}
catch
(Exception
e)
{
System.out.println("復制單個文件操作出錯");
e.printStackTrace();
}
}
/**
*
復制整個文件夾內容
*
@param
oldPath
String
原文件路徑
如:c:/fqf
*
@param
newPath
String
復制後路徑
如:f:/fqf/ff
*
@return
boolean
*/
public
void
Folder(String
oldPath,
String
newPath)
{
try
{
(new
File(newPath)).mkdirs();
//如果文件夾不存在
則建立新文件夾
File
a=new
File(oldPath);
String[]
file=a.list();
File
temp=null;
for
(int
i
=
0;
i
<
file.length;
i++)
{
if(oldPath.endsWith(File.separator)){
temp=new
File(oldPath+file[i]);
}
else{
temp=new
File(oldPath+File.separator+file[i]);
}
if(temp.isFile()){
FileInputStream
input
=
new
FileInputStream(temp);
FileOutputStream
output
=
new
FileOutputStream(newPath
+
"/"
+
(temp.getName()).toString());
byte[]
b
=
new
byte[1024
*
5];
int
len;
while
(
(len
=
input.read(b))
!=
-1)
{
output.write(b,
0,
len);
}
output.flush();
output.close();
input.close();
}
if(temp.isDirectory()){//如果是子文件夾
Folder(oldPath+"/"+file[i],newPath+"/"+file[i]);
}
}
}
catch
(Exception
e)
{
System.out.println("復制整個文件夾內容操作出錯");
e.printStackTrace();
}
}
❻ java如何實現將一個記事本文件內容復制到另一個文件
import java.io.File;x0dx0aimport java.io.FileInputStream;x0dx0aimport java.io.FileNotFoundException;x0dx0aimport java.io.FileOutputStream;x0dx0aimport java.io.IOException;x0dx0ax0dx0apublic class CopyMove {x0dx0ax0dx0a /**x0dx0a * @param argsx0dx0a */x0dx0a public static void main(String[] args) {x0dx0a // TODO Auto-generated method stubx0dx0a CopyMove cm = new CopyMove();x0dx0a cm.("h:\\1.txt", "c:\\2.txt");x0dx0a cm.move("h:\\3.txt", "h:\\r\\e\\4.txt");x0dx0a }x0dx0a /裂旦塌/文件復制前必須得到當前文件夾名字且要有\x0dx0a //當復制深遲遲層次路徑時要用mkdirs方法x0dx0a public void (String path1,String path2){x0dx0a try {x0dx0a FileInputStream fis = new FileInputStream(path1);x0dx0a int l = fis.available();x0dx0a byte[] c = new byte[l];x0dx0a fis.read(c);x0dx0a fis.close();x0dx0a int i = path2.lastIndexOf("\\")+1;x0dx0a System.out.println(i);x0dx0a String path = path2.substring(0, i);x0dx0a System.out.println(path);x0dx0a File f = new File(path);x0dx0a f.mkdirs();x0dx0a// System.out.println(f.getAbsolutePath());x0dx0a// System.out.println(f.isDirectory());x0dx0a FileOutputStream fos = new FileOutputStream(path2);x0dx0a fos.write(c);x0dx0a fos.close();x0dx0a System.out.println("文件復製成肆圓功");x0dx0a } catch (FileNotFoundException e) {x0dx0a // TODO Auto-generated catch blockx0dx0a System.out.println("文件復制失敗");x0dx0a } catch (IOException e) {x0dx0a // TODO Auto-generated catch blockx0dx0a e.printStackTrace();x0dx0a }x0dx0a }x0dx0a x0dx0a public void move(String path1,String path2){x0dx0a try {x0dx0a FileInputStream fis = new FileInputStream(path1);x0dx0a int l = fis.available();x0dx0a byte[] c = new byte[l];x0dx0a fis.read(c);x0dx0a fis.close();x0dx0a int i = path2.lastIndexOf("\\");x0dx0a //System.out.println(i);x0dx0a String path = path2.substring(0, i);x0dx0a System.out.println(path);x0dx0a File f = new File(path);x0dx0a f.mkdirs();x0dx0a// System.out.println(f.getAbsolutePath());x0dx0a// System.out.println(f.isDirectory());x0dx0a FileOutputStream fos = new FileOutputStream(path2);x0dx0a fos.write(c);x0dx0a fos.close();x0dx0a System.out.println("文件移動成功");x0dx0a File f2 = new File(path1);x0dx0a f2.delete();x0dx0a } catch (FileNotFoundException e) {x0dx0a // TODO Auto-generated catch blockx0dx0a System.out.println("文件移動失敗");x0dx0a } catch (IOException e) {x0dx0a // TODO Auto-generated catch blockx0dx0a e.printStackTrace();x0dx0a }x0dx0a }x0dx0ax0dx0a}
❼ java如何拷貝一個文件夾內的多個指定的文件到另外一個指定的文件夾下
你好:
請看代碼:
/**
*把一個文件夾里的所有文件包括文件夾一並原樣拷貝到另一個目錄中;
*@authorshuishui
*/
importjava.io.File;
importjava.io.FileInputStream;
importjava.io.FileNotFoundException;
importjava.io.FileOutputStream;
importjava.io.IOException;
importjava.io.InputStream;
importjava.io.OutputStream;
publicclassCopyDir001{
publicstaticFiledirFrom;
publicstaticFiledirTo;
//目標路徑創建文件夾
publicvoidlistFileInDir(Filefile){
File[]files=file.listFiles();
for(Filef:files){
Stringtempfrom=f.getAbsolutePath();
Stringtempto=tempfrom.replace(dirFrom.getAbsolutePath(),
dirTo.getAbsolutePath());//後面的路徑替換前面的路徑名
if(f.isDirectory()){
FiletempFile=newFile(tempto);
tempFile.mkdirs();
listFileInDir(f);
}else{
System.out.println("源文件:"+f.getAbsolutePath());
//
intendindex=tempto.lastIndexOf("\");//找到"/"所在的位置
StringmkdirPath=tempto.substring(0,endindex);
FiletempFile=newFile(mkdirPath);
tempFile.mkdirs();//創建立文件夾
System.out.println("目標點:"+tempto);
(tempfrom,tempto);
}
}
}
/**
*封裝好的文件拷貝方法
*/
publicvoid(Stringfrom,Stringto){
try{
InputStreamin=newFileInputStream(from);
OutputStreamout=newFileOutputStream(to);
byte[]buff=newbyte[1024];
intlen=0;
while((len=in.read(buff))!=-1){
out.write(buff,0,len);
}
in.close();
out.close();
}catch(FileNotFoundExceptione){
e.printStackTrace();
}catch(IOExceptione){
e.printStackTrace();
}
}
publicstaticvoidmain(String[]args){
Filefromfile=newFile("e:\shui\test");//源文件夾
Filetofile=newFile("e:\Jying\shui");//目標
CopyDir001=newCopyDir001();
//設置來源去向
.dirFrom=fromfile;
.dirTo=tofile;
.listFileInDir(fromfile);
}
}
❽ 怎樣用java程序實現文件拷貝
工具/原料
一台配置了java環境的電腦
一款適合自己的開發集成環境,這里用的是eclipse Kepler
文件拷貝DEMO
1.首先,理清思路,然後我們再動手操作。
拷貝,有源文件,和目的文件。
如果原文件不存在,提示,報錯。
如果目的文件不存在,創建空文件並被覆蓋。
如果目的地址,也即目的路徑不存在,創建路徑。
拷貝,輸入流,輸出流,關閉流。
拷貝前輸出文件大小,計算拷貝大小,比較並核實。輸出。