【Java习题】上一题的优化
来源:互联网 发布:如何申请淘宝号 编辑:程序博客网 时间:2024/06/06 06:56
题目见上一篇博客
import java.io.BufferedInputStream;
import java.io.BufferedOutputStream;
import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.FileReader;
import java.io.FileWriter;
import java.io.IOException;
import java.util.Scanner;
import java.io.BufferedOutputStream;
import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.FileReader;
import java.io.FileWriter;
import java.io.IOException;
import java.util.Scanner;
import org.junit.Test;
public class IO {
/**
* 实现文件复制
* @throws IOException
*/
@Test
public void test1() throws IOException{
Scanner scanner = new Scanner(System.in);
System.out.println("请输入您要复制的文件所在的全路径:");
String filePath = scanner.next();
System.out.println("请输入您要复制到的目标路径:");
String targetPath = scanner.next();
File f = new File(filePath);//源文件对象
File target = null;//目标文件对象
if(targetPath.endsWith("\\")||targetPath.endsWith("/")){
target = new File(targetPath+"copy_"+f.getName());
}else{
target = new File(targetPath+File.separator+"copy_"+f.getName());
}
if(target!=null&&target.exists()){
target.delete();
}
//判断文件是否存在
if(!f.exists()){
System.out.println("对不起,您要复制的文件不存在!");
return;
}
//判断文件的类型
if(f.getName().endsWith(".txt")){
//使用字符流复制
BufferedReader br = new BufferedReader(new FileReader(f));
BufferedWriter bw = new BufferedWriter(new FileWriter(target));
char [] buff = new char[1024];
int len=0 ;
while((len = br.read(buff))!=-1){
bw.write(buff,0,len);
}
bw.close();
br.close();
System.out.println("文件复制完成!复制的文件绝对路径为:"+target.getAbsolutePath());
}else{
//使用字节流复制
BufferedInputStream bis = new BufferedInputStream(new FileInputStream(f));
BufferedOutputStream bos = new BufferedOutputStream(new FileOutputStream(target));
byte [] buff = new byte[1024];
int len =0;
while((len = bis.read(buff))!=-1){
bos.write(buff, 0, len);
}
bos.close();
bis.close();
System.out.println("文件复制完成!复制的文件绝对路径为:"+target.getAbsolutePath());
}
}
}
/**
* 实现文件复制
* @throws IOException
*/
@Test
public void test1() throws IOException{
Scanner scanner = new Scanner(System.in);
System.out.println("请输入您要复制的文件所在的全路径:");
String filePath = scanner.next();
System.out.println("请输入您要复制到的目标路径:");
String targetPath = scanner.next();
File f = new File(filePath);//源文件对象
File target = null;//目标文件对象
if(targetPath.endsWith("\\")||targetPath.endsWith("/")){
target = new File(targetPath+"copy_"+f.getName());
}else{
target = new File(targetPath+File.separator+"copy_"+f.getName());
}
if(target!=null&&target.exists()){
target.delete();
}
//判断文件是否存在
if(!f.exists()){
System.out.println("对不起,您要复制的文件不存在!");
return;
}
//判断文件的类型
if(f.getName().endsWith(".txt")){
//使用字符流复制
BufferedReader br = new BufferedReader(new FileReader(f));
BufferedWriter bw = new BufferedWriter(new FileWriter(target));
char [] buff = new char[1024];
int len=0 ;
while((len = br.read(buff))!=-1){
bw.write(buff,0,len);
}
bw.close();
br.close();
System.out.println("文件复制完成!复制的文件绝对路径为:"+target.getAbsolutePath());
}else{
//使用字节流复制
BufferedInputStream bis = new BufferedInputStream(new FileInputStream(f));
BufferedOutputStream bos = new BufferedOutputStream(new FileOutputStream(target));
byte [] buff = new byte[1024];
int len =0;
while((len = bis.read(buff))!=-1){
bos.write(buff, 0, len);
}
bos.close();
bis.close();
System.out.println("文件复制完成!复制的文件绝对路径为:"+target.getAbsolutePath());
}
}
}
阅读全文
0 0
- 【Java习题】上一题的优化
- JAVA 习题
- java习题
- java习题
- Java习题
- Java习题
- java习题
- JAVA习题
- Java习题
- java--习题
- JAVA 习题
- java习题
- java 习题
- java习题
- 优化MySchool总结习题
- SICP 习题 (2.11)解题总结:区间乘法的优化
- 习题:用java实现文件的拷贝
- Java初学者的20道习题
- The Tower of Babylon UVa 437
- ubuntu彻底卸载mysql并且重新安装
- 转载:A guide to receptive field arithmetic for Convolutional Neural Networks
- TensorFlow之saver的用法
- Ubantu下安装配置arm-linux-gcc实践
- 【Java习题】上一题的优化
- TensorFlow学习笔记(四)自己动手求Weights和biases
- Android Studio插件整理 (个人整理和常用 不定期更新)
- camel与activemq搭建netty4框架
- my first article
- c语言字符串处理函数
- C++——多态之虚表
- 获取easyUI的datagird的所有行
- Linux内核模块编程