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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 逝者轨迹 中级黑马   /  2013-5-16 22:27  /  1530 人查看  /  8 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

本帖最后由 逝者轨迹 于 2013-5-18 19:41 编辑

在看IO流,有个疑问,怎么才可以实现读取(或者copy)磁盘下同一类型的所有文件(如txt,doc等文件),求大神给出具体点的思路

点评

没看到有云青年的字样 金币不加了哦  发表于 2013-5-18 11:34

评分

参与人数 1技术分 +1 收起 理由
袁梦希 + 1

查看全部评分

8 个回复

倒序浏览
传入文件名的时候使用*.txt/java/class........用*号。
回复 使用道具 举报
黑马伍哲沂 发表于 2013-5-16 22:41
传入文件名的时候使用*.txt/java/class........用*号。

传*.TXT已经试过,不行的
回复 使用道具 举报
逝者轨迹 发表于 2013-5-16 23:09
传*.TXT已经试过,不行的

程序没写对吧。  我之前就这么搞的  没问题。。。。。。   
回复 使用道具 举报
字符串中有这样一个方法public boolean endsWith(String s)
你先获取到你的文件的名字, 然后用这个方法依次判断, 符合的就复制, 例如 if(fileName.endsWith(".doc")) 会返回一个布尔值
回复 使用道具 举报
breeze 发表于 2013-5-18 08:18
字符串中有这样一个方法public boolean endsWith(String s)
你先获取到你的文件的名字, 然后用这个方法依次 ...

最好多答一点啦   有代码有注释最好  :hug:   加油
回复 使用道具 举报
breeze 中级黑马 2013-5-18 17:21:07
7#
下面这个方法接收一个File对象, file里写好文件夹路径, 会打印出所有的.java文件
private static void print(File files) {
  //判断是否为文件夹, 如果是就循环遍历里面的子文件
  if (files.isDirectory()) {
   for (File file : files.listFiles()) {
    //如果是文件并且文件名是以.java结尾的就打印该file
    if (file.isFile() && file.getName().endsWith(".java"))
     System.out.println(file);
    //如果是目录, 那么递归
    if (file.isDirectory()) {
     print(file);
    }
   }
  }
}

评分

参与人数 1技术分 +1 收起 理由
曹睿翔 + 1 代码精炼!

查看全部评分

回复 使用道具 举报
正则表达式
回复 使用道具 举报
首先我建议你先学习一下iO的整个体系
1.字节流InputStream,OutputStream
2.字符流Reader Writer
3.转换流 InputStreamReader,OutputStreamWriter
4.File类
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马