最近中文字幕高清中文字幕无,亚洲欧美高清一区二区三区,一本色道无码道dvd在线观看 ,一个人看的www免费高清中文字幕

為了賬號安全,請及時綁定郵箱和手機立即綁定

我這個拷貝功能為什么沒有實現(xiàn)呢 ?反而源文件的內(nèi)容被清空了

package com.File;

import java.io.*;

/**
* Created by Administrator on 2017\8\8 0008.
* 實現(xiàn)文件拷貝:用帶緩沖區(qū)的字節(jié)流來實現(xiàn)
* 寫入目標文件不需要判斷是否存在,如果不存在,則自動創(chuàng)建
*/
public class CopyFile {
? ?public static void copyFile(File srcFile,File dstFile)throws IOException{
? ? ? ?if(!srcFile.exists()){
? ? ? ? ? ?//拋出異常
? ? ? ? ? ?throw new IllegalArgumentException("文件:"+srcFile+"不存");
? ? ? ?}
? ? ? ?if(!srcFile.isFile()){
? ? ? ? ? ?//拋出異常
? ? ? ? ? ?throw new IllegalArgumentException("不是文件");
? ? ? ?}

? ? ? ?BufferedInputStream bis= new BufferedInputStream(new FileInputStream(srcFile));//默認緩沖區(qū)大小
? ? ? ?//BufferedInputStream bis= new BufferedInputStream(new FileInputStream(srcFile),20);指定緩沖區(qū)大小

? ? ? ?BufferedOutputStream ois=new BufferedOutputStream(new FileOutputStream(dstFile));
? ? ? // BufferedOutputStream ois2=new BufferedOutputStream(new FileOutputStream(dstFile),20);
? ? ? ?int c;
? ? ? ?while((c=bis.read())!=-1){
? ? ? ? ? ? ? ?ois.write(c);
? ? ? ? ? ? ? ?ois.flush();//這塊必須要刷新緩沖區(qū),否則數(shù)據(jù)寫不進去
? ? ? ?}

? ? ? ?//完成操作之后,需要關(guān)閉
? ? ? ?bis.close();
? ? ? ?ois.close();
? ?}

? ?public static void main(String[] args)throws IOException {
? ? ? ?CopyFile.copyFile(new File("D:\\U盤\\imooc\\Hello.txt"),new File("D:\\U盤\\imooc\\Hello.txt"));
? ?}
}

正在回答

3 回答

因為你的源文件和目標文件名稱一樣,所以在找目標文件時發(fā)現(xiàn)了和目標文件名稱一樣的源文件,就把源文件刪除了重新創(chuàng)建了一個文件,所以你的源文件就沒有了,老師視頻里面有講到,當你給出一個路徑時,如果沒有這個文件他會創(chuàng)建這個文件,如果存在這個文件他會把這個文件刪除再創(chuàng)建,如果你不想這個已經(jīng)存在的文件被刪除,只是想要續(xù)寫他,需要再加一個true,如果我沒記錯應該是:new File("文件路徑",true),具體的你可以再聽一遍

2 回復 有任何疑惑可以回復我~

我試了一下可以實現(xiàn)啊,

? CopyFile.copyFile(new File("E:"+File.separator+"io.txt"),new File("E:"+File.separator+"hello.txt"));//這樣可以兼容不同的系統(tǒng),不建議你那種寫法。

1 回復 有任何疑惑可以回復我~

CopyFile.copyFile(new File("D:\\U盤\\imooc\\Hello.txt"),new File("D:\\U盤\\imooc\\Hello.txt"));

第一個File是源文件,第二個File是copy之后生成的文件,在文件下面開始是沒有的。

至于為什么同一個文件copy時內(nèi)容被刪就不知道了。

0 回復 有任何疑惑可以回復我~

舉報

0/150
提交
取消

我這個拷貝功能為什么沒有實現(xiàn)呢 ?反而源文件的內(nèi)容被清空了

我要回答 關(guān)注問題
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學習伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號