黑马程序员技术交流社区
标题:
复制一张图片,写一下思路,和注释
[打印本页]
作者:
LTT
时间:
2015-5-27 21:39
标题:
复制一张图片,写一下思路,和注释
复制一张图片
作者:
想要那片海
时间:
2015-5-27 22:33
import java.io.*;
public class CopyPic {
public static void main(String[] args) {
// TODO Auto-generated method stub
File from=new File("E:\\java123\\黑马考试\\pic001.jpg");
File to=new File("E:\\java123\\黑马考试\\pic005.jpg");
//判断源文件是否存在,如果不存在,抛出异常
if(!from.exists())
throw new RuntimeException("源文件不存在");
//如果目的文件已经存在,抛出异常
if(to.exists())
throw new RuntimeException("目的文件已经存在,请重命名");
copyPic(from,to);
}
public static void copyPic(File from,File to)
{
InputStream in=null;//定义读取流
OutputStream out=null;//定义写入流
try {
in=new FileInputStream(from);//读取流关联源文件
out=new FileOutputStream(to);//写入流关联目的文件
byte[] by=new byte[1024];
int len=0;
while((len=in.read(by))!=-1)
{
out.write(by, 0, len);//将读取到的数据写入目的文件
out.flush();//即时刷新
}
System.out.println("图片复制成功");
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
finally
{
try {
//关闭流
if(in!=null)
in.close();
if(out!=null)
out.close();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
}
作者:
bin2015
时间:
2015-5-28 09:39
public class CopyImage {
public static void main(String[] args) throws Exception {
//找到目标文件
File inFile = new File("F:\\美女\\1.mp3");
File outFile = new File("E:\\拷贝.mp3");
//建立数据通道
FileInputStream fileInputStream = new FileInputStream(inFile);
FileOutputStream fileOutputStream = new FileOutputStream(outFile);
//建立缓冲字节数组,边读边写
byte[] buf = new byte[1024];
int length = 0 ; //用于记录每次读取的字节个数
while((length=fileInputStream.read(buf))!=-1){ // 700 300
fileOutputStream.write(buf,0,length);
}
//关闭资源(关闭资源的原则:先开后关,后开先关)
fileOutputStream.close();
fileInputStream.close();
}
}
复制代码
作者:
kmlitheima
时间:
2015-5-28 10:29
。。。。。。。没看到图哇?
作者:
FTD-2009
时间:
2015-5-28 10:40
看层主的回复张知识了
作者:
YRDHelloworld
时间:
2015-5-28 12:04
复制一张图片要用到的是字节流对象
class FileStreamDemo
{
public static void main(String[] args)
{
FileOutputStream fos=null;
FileInputStream fis=null;
try
{
fos=new FileOutputStream("c:\\3.jpg"); //文件写入流对象
fis=new FileInputStream("c:\\2.jpg"); //文件读取流对象
byte[] by=new byte[1024*4]; //定义一个字节数组,用于存储读取到的图片
int len=0; //初始化一个值
while((len=fis.read(by))!=-1) //read方法,将字节数组作为参数传递给读取流对象,不等于-1就向写入流对象总写入
{
fos.write(by,0,len);
}
}
catch (IOException e)
{
throw new RuntimeException("图片复制失败");
}
finally
{
try
{
if(fos!=null)
{
fos.close();
}
}
catch (IOException e)
{
throw new RuntimeException("写入复制失败");
}
try
{
if(fis!=null)
{
fis.close();
}
}
catch (IOException e)
{
throw new RuntimeException("读取复制失败");
}
}
}
}
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2