首页 新闻 论坛 群组 Blog 文档 下载 读书 Tag 网摘 搜索 .NET Java 游戏 视频 人才 外包 培训 数据库 书店 程序员
中国软件网
欢迎您:游客 | 登录 注册 帮助
  • java遍历文件夹生成文件?
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    发表于:2008-04-08 16:04:46 楼主
    我的filejia文件下有文件夹aa和bb和cc

    aa里有文件2008-04-08.txt 和2008-04-07.txt
    2008-04-08.txt文件内容如下:
    2#401#0013d33598b9
    2#401#0014782e1158
    3#401#000e7becc12c
    3#401#001109b5d326

    bb里有文件2008-04-08.txt 和2008-04-07.txt
    2008-04-08.txt文件内容如下:
    4#401#001109b5d386
    5#401#00d059cad226
    7#401#0011d823e501

    cc里有文件2008-04-08.txt 和2008-04-07.txt
    2008-04-08.txt文件内容如下:
    3#401#000e7becc12c
    3#401#001109b5d326
    4#401#001109b5d386

    我想通过遍历所有文件夹和文件内容最终生成ww.txt,文件内容(因为今天2008-04-08,所以只取2008-04-08.txt内容,2008-04-07.txt不要。
    aa#2008-04-08#2#401#0013d33598b9
    aa#2008-04-08#2#401#0014782e1158
    aa#2008-04-08#3#401#000e7becc12c
    aa#2008-04-08#3#401#001109b5d326
    bb#2008-04-08#4#401#001109b5d386
    bb#2008-04-08#5#401#00d059cad226
    bb#2008-04-08#7#401#0011d823e501
    cc#2008-04-08#3#401#000e7becc12c
    cc#2008-04-08#3#401#001109b5d326
    cc#2008-04-08#4#401#001109b5d386

    小弟初学,在线等,请给出代码
    10  修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    发表于:2008-04-10 23:12:491楼 得分:0
    急,求救字符串变换问题
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    发表于:2008-04-11 10:08:592楼 得分:0
    关注。。。
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • li_d_s
    • 等级:
    发表于:2008-04-11 10:34:333楼 得分:0
    没那么多时间,给个架子自己去填
    public static void getTestList(File srcFile) throws Exception {

            File[] subFiles = srcFile.listFiles();
            for (int i = 0; i < subFiles.length; i++) {
                File file = subFiles[i];
                if (file.isFile()) {
                    String fileName = file.getName();           
                    if(fileName.equals("当日日期.txt")){
                        //读取file
                        //写入新File
                    }               
                } else {
                    getTestList(file);
                }
            }
        }
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • niuhua
    • 等级:
    发表于:2008-04-11 12:45:234楼 得分:0
    Java code
    import java.io.*; public class DateTest { public static void main(String[] args) throws Exception { int i,j; File result = new File("D:\\filejia","ww.txt");//最终的结果 FileWriter fw = new FileWriter(result); BufferedWriter bw = new BufferedWriter(fw); File path = new File("D:\\filejia");//filejia的位置 File[] dir = path.listFiles();//获取filejia的子目录 for(i = 0;i < dir.length;i++) { File[] file = dir[i].listFiles();//子目录里的文件 try{ for(j = 0;j < file.length;j++) { if(file[j].getName().equals("2008-04-08.txt"))//主程序 { FileReader fr = new FileReader(file[j]); BufferedReader br = new BufferedReader(fr); String s; while((s=br.readLine())!=null) { String str = dir[i].getName()+"#"+"2008-04-08"+"#"+ s+"\n"; bw.write(str); bw.flush(); } } } } catch(Exception e){} } bw.close(); } }

    我也是新手,只能做成这样了,不知道符合你的要求不
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    发表于:2008-04-11 13:40:215楼 得分:0
    引用 4 楼 niuhua 的回复:
    Java codeimport java.io.*;

    public class DateTest
    {
       
        public static void main(String[] args) throws Exception
        {
            int i,j;
            File result = new File("D:\\filejia","ww.txt");//最终的结果
            FileWriter fw = new FileWriter(result);
            BufferedWriter bw = new BufferedWriter(fw);
           
            File path = new File("D:\\filejia");//filejia的位置
            …
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • li_d_s
    • 等级:
    发表于:2008-04-11 14:01:006楼 得分:0
    4楼的是单层的,多层子目录就没用了
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    发表于:2008-04-11 15:16:187楼 得分:0
    spackage com.file;

    import java.io.BufferedReader;
    import java.io.File;
    import java.io.FileInputStream;
    import java.io.FileOutputStream;
    import java.io.InputStreamReader;
    import java.io.PrintWriter;
    import java.text.SimpleDateFormat;
    import java.util.Date;

    public class FileTest {

    private static FileOutputStream fos;
    private static FileInputStream fis;
    private static BufferedReader br;
    private static PrintWriter pw;
    public static void main(String[] args)
    {
    File file = new File("D://filejia");
    File[] files = file.listFiles();
    try {
    fos = new FileOutputStream("D://filejia//ww.txt");
    pw = new PrintWriter(fos,true);
    getFiles(files);
    } catch (Exception e) {
    e.printStackTrace();
    }


    }
    public static void getFiles(File[] files)
    {
    Date date = new Date();
    SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
    String dates = sdf.format(date);
    int i=0;
    String line = null;
    for(i=0;i <files.length;i++)
    {
    if(files[i].isDirectory())
    {
    getFiles(files[i].listFiles());
    }
    if(files[i].isFile())
    {
      if(files[i].getName().equals(dates+".txt"))
      try {
              fis = new FileInputStream(files[i]);
              br =new BufferedReader(new InputStreamReader(fis));
              while((line=br.readLine())!=null)
              {
              pw.println(line);
              }
             
    } catch (Exception e) {
    e.printStackTrace();
    }
    }
    }
    }

    }
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    发表于:2008-04-11 17:07:588楼 得分:0
    DDD
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • niuhua
    • 等级:
    发表于:2008-04-11 18:10:579楼 得分:0
    学习了
    修改 删除 举报 引用 回复

    网站简介广告服务网站地图帮助联系方式诚聘英才English 问题报告
    北京创新乐知广告有限公司 版权所有 京 ICP 证 070598 号
    世纪乐知(北京)网络技术有限公司 提供技术支持
    Copyright © 2000-2008, CSDN.NET, All Rights Reserved