Java IO实战-文件复制操作实例
package com.mldn;
/*
要拷贝非文本数据,目标需要加上正确的文件扩展名,或者不加;
*/
import java.io.File;
import java.io.InputStream;
import java.io.FileInputStream;
import java.io.OutputStream;
import java.io.FileOutputStream;
import java.io.FileNotFoundException;
import java.io.IOException;
public class Copy
{
public static void main(String[] args)
{
if (args.length != 2) // 判断参数输入;
{
System.out.println(“输入参数不正确!”);
System.out.println(“格式: java Copy sourceFile destinationFile”);
System.exit(1);
}
File source = new File(args[0]); // 源文件对象
File dest = new File(args[1]); // 目标文件对象
InputStream in = null; // 准备输入流对象
OutputStream out = null; // 准备输出流对象
try // 分开异常处理,方便发现异常代码
{
in = new FileInputStream(source); // 输入流对象
}
catch (FileNotFoundException e)
{
e.printStackTrace();
System.out.println(“源文件不存在!”);
}
try
{
out = new FileOutputStream(dest); // 输出流对象
}
catch (FileNotFoundException e)
{
e.printStackTrace();
}
int temp = 0; // 接收临时字节流
try
{
while ((temp = in.read()) != -1) // 判断是否文件尾
{
out.write(temp); // 边读边写,写出数据
}
System.out.println(“复制完毕!”);
}
catch (IOException e)
{
e.printStackTrace();
System.out.println(“复制失败!”);
}
try
{
in.close();
out.close(); // 关闭文件
}
catch (IOException e)
{
e.printStackTrace();
}
}
}
/*
administrator@xu-desktop:~$ javac -d . work/Copy.java
administrator@xu-desktop:~$ java com.mldn.Copy /home/administrator/Firefox_wallpaper.png ./work/l.txt
复制完毕! // 将无法看
administrator@xu-desktop:~$ java com.mldn.Copy /home/administrator/Firefox_wallpaper.png ./work/l.png
复制完毕!
administrator@xu-desktop:~$ java com.mldn.Copy /home/administrator/Firefox_wallpaper.png ./work/l
复制完毕!
administrator@xu-desktop:~$ java com.mldn.Copy /home/administrator/Firefox_wallpaper ./work/l
java.io.FileNotFoundException: /home/administrator/Firefox_wallpaper (No such file or directory)
at java.io.FileInputStream.open(Native Method)
at java.io.FileInputStream.
at com.mldn.Copy.main(Copy.java:30)
源文件不存在!
Exception in thread “main” java.lang.NullPointerException
at com.mldn.Copy.main(Copy.java:51)
*/
声明: 除非转自他站(如有侵权,请联系处理)外,本文采用 BY-NC-SA 协议进行授权 | 嗅谱网
转载请注明:转自《Java IO实战-文件复制操作实例》
本文地址:http://www.xiupu.net/archives-82.html
关注公众号:
微信赞赏
支付宝赞赏