牛骨文教育服务平台(让学习变的简单)
博文笔记

读取文件夹下的文件数量 并输出文件名

创建时间:2011-12-29 投稿人: 浏览次数:1368

package test2;

import java.io.File;

public class ReadPathFile {

 //静态的变量可以直接通过类名.变量  来访问,静态变量必须在类里声明。
 public static int n = 0;

 //directory: 文件路径
 public void listfiles(File directory) {

  //读取该目录下的文件夹和文件放进files
  File[] files = directory.listFiles();

  //循环判断files的元素是文件还是文件夹
  for (int i = 0; i < files.length; i++) {
   //文件夹时,递归调用该方法,查看该文件下的所有文件和文件夹
   if (files[i].isDirectory()) {
    listfiles(files[i]);
    //文件场合,输出该路径和文件名同时文件数加 1
   } else if (files[i].isFile()) {
    //输出文件的路径
    System.out.println(files[i].getParentFile());
    //输出文件名
    System.out.println(files[i].getName());
    n++;
   }
  }
 }

 

public static void main(String[] args) {
  
  File testfile = new File("G:");
  ReadPathFile f = new ReadPathFile();
  f.listfiles(testfile);
  System.out.println("共有 "+n+" 个文件");
 }
}


读取文件:

// Read file

       File filePath = new File("C:\DBT\data\BATCH\snd\20101117");

       File file = null;

 

        if (filePath.isDirectory()) {

           File[] files = filePath.listFiles();

           file = newFile(files[files.length - 1].getAbsolutePath());

        }

 

        char[] dataChar = newchar[81];

       FileReader fr = newFileReader(file);

       BufferedReader br = newBufferedReader(fr);

       br.read(dataChar, 0, 81);

       String head = newString(dataChar);

        assertEquals("1ADAHIFAH910100002", head.substring(0, 18));

       String headPart = "20101117000000                                 ";

        assertEquals(headPart + new String(newbyte[] { 0x0A }), head.substring(32));

 


声明:该文观点仅代表作者本人,牛骨文系教育信息发布平台,牛骨文仅提供信息存储空间服务。