在利用java實現拷貝文件的時候,首先我們需要把拷貝這個動作解剖成兩個動作。一:讀取文件中的數據流;二:導入數據流。
import java.io.FileInputStream;import java.io.FileNotFoundException;import java.io.IOException;/** * 使用InputStream抽象類的子類FileInputStream類 * 從文件中讀取流數據 */public class FileInputStreamDemo1 { public static void test1(){ try{ FileInputStream myStream = new FileInputStream("src/a.txt"); //myStream用于存放數據流。 //new FileInputStreamh()后面接著是原文件名及其地址。 int a = 0; while ((a=myStream.read())!=-1){ //返回值等于非-1進行循環,如果遇到-1則跳出循環 System.out.PRint((char)a);//逐個打印 } myStream.close(); }catch(FileNotFoundException e){ e.printStackTrace(); }catch(IOException e){ e.printStackTrace(); } } public static void main(String[] args){ test1(); }}import java.io.FileNotFoundException;import java.io.FileOutputStream;import java.io.IOException;import java.io.OutputStream;/** * 使用OutputStream抽象類的子類FileOutputStream類 * 導入數據流在文件中 * @author PeicongHe * */public class Demo1 { public static void test2(){ String myContent = "I Am A Good Man!!"; OutputStream os; try { os = new FileOutputStream("src/b.txt");//用于存放數據流 os.write(myContent.getBytes());//寫入數據流 os.flush();//刷新 os.close();//關閉數據流 } catch (FileNotFoundException e) { e.printStackTrace(); } catch (IOException e) { e.printStackTrace(); } } public static void main(String[] args){ test2(); }}將這兩個步驟結合在一起
import java.io.FileInputStream;import java.io.FileOutputStream;import java.io.IOException;import java.io.OutputStream;public class CopyFile { public static void copy(){ try{ FileInputStream myStream = new FileInputStream("src/1_suwu150.jpg"); OutputStream os = new FileOutputStream("hshs.jpg"); int a = 0; while((a=myStream.read())!=-1){ System.out.println((char)a); os.write(a); } System.out.println("復制成功!"); os.flush(); os.close(); myStream.close(); }catch(IOException e){ e.printStackTrace(); } } public static void main(String[] args){ copy(); }}新聞熱點
疑難解答