黑马程序员技术交流社区
标题:
自己做的小程序,求改进
[打印本页]
作者:
wxf468907066
时间:
2016-3-23 23:10
标题:
自己做的小程序,求改进
public static void main(String[] args)throws IOException{
Scanner sc = new Scanner(System.in);
System.out.println("请输入要拷贝的格式:");
String format = sc.nextLine();
System.out.println("请为你的新文件命名:");
String name = sc.nextLine();
targetFile(getFile(),format,name);
}
public static File getFile(){ //返回值类型File,无参数类型
System.out.println("请输入需要查找的文件夹路径:");
Scanner sc = new Scanner(System.in);
while(true){
String line = sc.nextLine();
File dir = new File(line);
if(!dir.exists()){
System.out.println("您录入的文件夹路径不存在,请重新录入文件夹路径:");
}else if(dir.isFile()) {
System.out.println("您录入的是文件路径,请重新录入文件夹路径");
}else {
return dir;
}
}
}
public static void targetFile(File dir,String format,String name) throws IOException {
File[] subFiles = dir.listFiles();
for (File subFile : subFiles) {
if(subFile.getName().toString().equals(name)){
System.out.println("请换名字:");
}else{
if(subFile.isFile() && subFile.getName().endsWith("." + format)) {
BufferedInputStream bis = new BufferedInputStream(new FileInputStream(subFile));
BufferedOutputStream bos = new BufferedOutputStream(new FileOutputStream(new File("D:\\KuGou" + name + ".mp3"),true));
int a;
while((a = bis.read()) != -1) {
bos.write(a);
}
bis.close();
bos.close();
}else if(subFile.isDirectory()){
targetFile(subFile,format,name);
}
}
}
}
}
开始想着要把所有的笔记拷到一个txt里面做的这个,后来自己把mp3拷成歌曲串烧也不错.但是不能重名,重名后就一直烤,好危险的感觉,然后测试了一下烤视频文件,就是把一天的视频做成一个,就根本搞不成了,把文件都坏了,求指正!
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2