您当前的位置: 首页 > 

Gutie_bartholomew

暂无认证

  • 3浏览

    0关注

    378博文

    0收益

  • 0浏览

    0点赞

    0打赏

    0留言

私信
关注
热门博文

模拟歌曲复制和删除过程

Gutie_bartholomew 发布时间:2018-01-26 22:14:20 ,浏览量:3

package pxyhomeworkday10;
import java.io.File; import java.io.FileInputStream; import java.io.FileNotFoundException; import java.io.FileOutputStream; import java.io.IOException; import java.util.Scanner; /*第四题:分析以下需求,并用代码实现 模拟歌曲复制和删除过程:假设在D:\\songs文件夹中存在一些歌曲(均为mp3格式) 循环显示该菜单:请选择您要进行的操作:1:查询所有歌曲   2:根据歌曲名称复制  3:根据歌曲名称删除 4: 退出 举例:  用户输入:1   存在以下歌曲:    蒙娜丽莎的眼泪    烟花易冷    上海滩    小苹果    夜空中最亮的星
 用户输入:2   请输入要复制的歌曲名称: 上海滩   请输入存储路径: E:\\songs  (说明:该路径如果存在则不创建,不存在则创建)   复制结果: 歌曲上海滩已经成功复制到E:\\songs目录中
 用户输入:3   请输入要删除的歌曲名称: 上海滩   删除结果: 歌曲上海滩已经成功删除
 用户输入: 4   退出系统*/ public class test4last {  public static void main(String[] args) throws IOException {   File dir=new File("D:\\songs");   Scanner choose=new Scanner(System.in);   while(true){    System.out.println("请选择您要进行的操作:1:查询所有歌曲   2:根据歌曲名称复制  3:根据歌曲名称删除 4: 退出");    String c=choose.nextLine();    switch(c){    case"1":     method1(dir);//查询所有歌曲     break;    case"2":     method2(dir);//根据歌曲名称复制     break;    case"3":     method3(dir);//根据歌曲名称删除     break;    case"4":     //退出     System.exit(0);//终止当前正在运行的 Java 虚拟机。     break;    case"5":     System.out.println("输入出错");     break;    }   }  }//主程序末尾    //根据歌曲名称删除的方法  public static void method3(File dir){   System.out.println("请输入要删除的歌曲名称:");   Scanner sc = new Scanner(System.in);   String name=sc.nextLine();   String name1=name+".mp3";   File f=new File(dir,name1);   if(f.delete()){    System.out.println("删除结果: 歌曲"+name+"已经成功删除");   }  }    //根据歌曲名称复制的方法  public static void method2(File dir) throws IOException{   System.out.println("请输入要复制的歌曲名称:");//获得文件名   Scanner sc = new Scanner(System.in);   String getname=sc.nextLine();   System.out.println("请输入存储路径:");   Scanner sc1 = new Scanner(System.in);   String path=sc.nextLine();//获得存储路径E:\\songs   File path1=new File(path);   String name=getname+".mp3";   if(!path1.exists()){    path1.mkdirs();//先判断有没有文件夹,没有就新建一个   }   //输入流   FileInputStream fis = new FileInputStream(new File(dir,name));   //输出流,这里要是使用字节流,FileInputStream:用来读取诸如图像数据之类的原始字节流。   FileOutputStream fos = new FileOutputStream(new File(path,name));   int len = 0;   byte[] arr = new byte[1024];   while((len = fis.read(arr))!=-1){    fos.write(arr,0,len);   }   fos.close();   fis.close();//复制结果: 歌曲上海滩已经成功复制到E:\\songs目录中   System.out.println("复制结果: 歌曲"+name+"已经成功复制");  }    //查询所有歌曲的方法  public static void method1(File dir){   File[] files=dir.listFiles();   System.out.println("存在以下歌曲:");   for (File file : files) {    if(file.isFile()){     String fileName = file.getName();     if(fileName.endsWith(".mp3")){     System.out.println("\t"+ fileName.substring(0,fileName.lastIndexOf(".")));}     /*String substring(int beginIndex, int endIndex)  返回一个新字符串,它是此字符串的一个子字符串。 */     /*int lastIndexOf(String str)   返回指定子字符串在此字符串中最右边出现处的索引。 */    }   }  }         }
关注
打赏
1662709650
查看更多评论
立即登录/注册

微信扫码登录

0.0467s