A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 。。。。。。 中级黑马   /  2013-4-19 09:13  /  1874 人查看  /  5 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

本帖最后由 。。。。。。 于 2013-4-19 12:53 编辑
  1. package com.itcast.day25;
  2. import java.io.*;
  3. public class AviFile {

  4. /*// *//**
  5. // * @param args
  6. //// *//*
  7. */ public static void main(String[] args) {
  8. File file=new File("E:\\计算机知识类\\黑马\\java高新技术\\");
  9. avisearch(file);
  10. }
  11. public static void avisearch(File file)
  12. {
  13. File[] filelist=file.listFiles();
  14. for (File file2 : filelist) {
  15. if(file2.isDirectory())
  16. avisearch(file2);
  17. else{
  18. if(file2.getName().endsWith(".avi"))
  19. {
  20. try{
  21. BufferedInputStream bufi=new BufferedInputStream(new FileInputStream(file2));
  22. File f=new File("D:\\a\\"+file2.getName());
  23. BufferedOutputStream bufw=new BufferedOutputStream(new FileOutputStream(f));
  24. byte[] buf=new byte[1024];
  25. int len=0;
  26. while((len=bufi.read(buf))!=-1)
  27. {
  28. bufw.write(buf,0,len);
  29. bufw.flush();
  30. }
  31. bufi.close();
  32. bufw.close();
  33. }
  34. catch(IOException e)
  35. {

  36. }
  37. }
  38. }

  39. }
  40. }

  41. }
复制代码
程序运行没有问题,但是复制过去后,全是0KB的文件,这是为什么呢?大神帮忙看看啊

评分

参与人数 1技术分 +1 收起 理由
田磊阳 + 1

查看全部评分

5 个回复

倒序浏览
先后改过不同的路径,也用过文件夹套文件夹再套文件夹,每个文件夹里分别放几个不同的视频。

经过多i次运行验证,程序都没有出现你说问题。

每次运行结果,使用复制后的文件播放也没有问题。

请仔细检查文件路径里是否有avi格式视频,或者是不是运行的不是该程序的class文件。
回复 使用道具 举报
黑马伍哲沂 发表于 2013-4-19 09:33
先后改过不同的路径,也用过文件夹套文件夹再套文件夹,每个文件夹里分别放几个不同的视频。

经过多i次运 ...

肯有视频啊,就是张老师的那个高新技术的视频啊,我想把那56个文件夹下的视频整合到一个文件夹下啊。它的目录太深了,太不方便了
回复 使用道具 举报
。。。。。。 发表于 2013-4-19 09:43
肯有视频啊,就是张老师的那个高新技术的视频啊,我想把那56个文件夹下的视频整合到一个文件夹下啊。它的 ...

我的意思是,我多次运行结果都没有问题。
问题出现在程序上的可能性不大,你应该更多的查找的别的原因。
非程序上的问题,一般只有你自己有这个能力找出来。
回复 使用道具 举报
黑马伍哲沂 发表于 2013-4-19 09:46
我的意思是,我多次运行结果都没有问题。
问题出现在程序上的可能性不大,你应该更多的查找的别的原因。
...

不过,我在用你的代码的时候,调整过程序格式。我把我的发给你运行试下,可能有被我改动了我没发觉。
  1. import java.io.*;
  2. public class IOQuesition
  3. {
  4.         public static void main(String[] args)
  5.         {
  6.                 File file=new File("E:\\黑马基础视频\\传智播客_毕向东_Java基础视频教程\\黑马程序员_毕向东_Java基础视频教程第04天");
  7.                 avisearch(file);
  8.         }
  9.         public static void avisearch(File file)
  10.         {
  11.                 File[] filelist = file.listFiles();
  12.                 for (File file2 : filelist)
  13.                 {
  14.                                 if(file2.isDirectory())
  15.                                         avisearch(file2);
  16.                                 else
  17.                                 {
  18.                                         if(file2.getName().endsWith(".avi"))
  19.                                         {
  20.                                                 try
  21.                                                 {
  22.                                                         BufferedInputStream bufi=new BufferedInputStream(new FileInputStream(file2));
  23.                                                         File f = new File("D:\\"+file2.getName());
  24.                                                         BufferedOutputStream bufw=new BufferedOutputStream(new FileOutputStream(f));
  25.                                                         byte[] buf=new byte[1024];
  26.                                                         int len=0;
  27.                                                         while((len=bufi.read(buf))!=-1)
  28.                                                         {
  29.                                                                 bufw.write(buf,0,len);
  30.                                                                 bufw.flush();
  31.                                                         }
  32.                                                         bufi.close();
  33.                                                         bufw.close();
  34.                                                 }
  35.                                                 catch(IOException e)
  36.                                                 {

  37.                                                 }
  38.                                         }
  39.                                 }

  40.                         }
  41.                 }

  42. }
复制代码

评分

参与人数 1技术分 +1 收起 理由
田磊阳 + 1

查看全部评分

回复 使用道具 举报
黑马伍哲沂 发表于 2013-4-19 09:47
不过,我在用你的代码的时候,调整过程序格式。我把我的发给你运行试下,可能有被我改动了我没发觉。 ...

呵,找出原因了。应该复制的东西太多了,内存不够了,但是它也没有报错,分成两次整合就没有问题了,谢谢了

点评

问题解决后,改为已解决  发表于 2013-4-19 12:30
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马