导航:首页 > 编程语言 > java获取目录下所有文件

java获取目录下所有文件

发布时间:2022-04-29 12:04:57

java中怎样获得一个文件夹中的所有文件名

java中获得一个文件夹中的所有文件名代码如下:

packagecom.readfile;

importjava.io.File;

publicclassGetAllFiles {

publicstaticvoidmain(String[] args) {

//路径 这里写一个路径进去

String path="F:\QQ文档";

//调用方法

getFiles(path);

}

/**

* 递归获取某路径下的所有文件,文件夹,并输出

*/

publicstaticvoidgetFiles(String path) {

File file =newFile(path);

// 如果这个路径是文件夹

if(file.isDirectory()) {

// 获取路径下的所有文件

File[] files = file.listFiles();

for(inti =0; i < files.length; i++) {

// 如果还是文件夹 递归获取里面的文件 文件夹

if(files[i].isDirectory()) {

System.out.println("目录:"+ files[i].getPath());

getFiles(files[i].getPath());

}else{

System.out.println("文件:"+ files[i].getPath());

}

}

}else{

System.out.println("文件:"+ file.getPath());

}

}

}

(1)java获取目录下所有文件扩展阅读:

如果想要获得当前文件中的文件名只需要String [] fileName = file.list();就可以了。

如果要包括文件中的文件名就可以用递归的方式。下面是两个具体的实现。

其中public static String [] getFileName(String path)是只得到当前文件中的文件名。

public static void getAllFileName(String path,ArrayList<String> fileName)是包括当前文件及其子文件的文件名。

⑵ java如何读取指定目录下的txt文件

importjava.io.BufferedReader;
importjava.io.FileInputStream;
importjava.io.IOException;
importjava.io.InputStreamReader;
importjava.util.Scanner;
publicclassTestRead{
publicstaticvoidmain(String[]args)throwsIOException{

Stringuri="d:123.txt"

FileInputStreamfis=newFileInputStream(uri);
InputStreamReaderisr=newInputStreamReader(fis);
BufferedReaderbr=newBufferedReader(isr);
Strings;
while((s=br.readLine())!=null){
//每次读取一行
}
}
}

⑶ java怎样获得某个目录下所有文件的文件名

java中获得一个文件夹中的所有文件名代码如下:

packagecom.readfile;

importjava.io.File;

publicclassGetAllFiles {

publicstaticvoidmain(String[] args) {

//路径 这里写一个路径进去

String path="F:\QQ文档";

//调用方法

getFiles(path);

}

/**

* 递归获取某路径下的所有文件,文件夹,并输出

*/

publicstaticvoidgetFiles(String path) {

File file =newFile(path);

// 如果这个路径是文件夹

if(file.isDirectory()) {

// 获取路径下的所有文件

File[] files = file.listFiles();

for(inti =0; i < files.length; i++) {

// 如果还是文件夹 递归获取里面的文件 文件夹

if(files[i].isDirectory()) {

System.out.println("目录:"+ files[i].getPath());

getFiles(files[i].getPath());

}else{

System.out.println("文件:"+ files[i].getPath());

}

}

}else{

System.out.println("文件:"+ file.getPath());

}

}

}

(3)java获取目录下所有文件扩展阅读:

如果想要获得当前文件中的文件名只需要String [] fileName = file.list();就可以了。

如果要包括文件中的文件名就可以用递归的方式。下面是两个具体的实现。

其中public static String [] getFileName(String path)是只得到当前文件中的文件名。

public static void getAllFileName(String path,ArrayList<String> fileName)是包括当前文件及其子文件的文件名。

⑷ JAVA7如何遍历一个目录下的所有文件,如何知

1.遍历本目录下所有的文件(不包括目录的目录里的文件)
import java.io.File;public class main { public static void main(String[] args) { String path = "D:\\JAVA"; //要遍历的路径 File file = new File(path); //获取其file对象 File[] fs = file.listFiles(); //遍历path下的文件和目录,放在File数组中 for(File f:fs){ //遍历File[]数组 if(!f.isDirectory()) //若非目录(即文件),则打印 System.out.println(f); } }}

运行结果:
打印出 D:/JAVA下的全部文件(包括D:/JAVA下的目录下的文件)
1.遍历本目录下所有的文件(包括目录的目录里的文件)

import java.io.File;import java.io.FileFilter;public class FileText { public static void main(String[] args) { String path = "D:\\JAVA"; //要遍历的路径 File file = new File(path); //获取其file对象 func(file); } private static void func(File file){ File[] fs = file.listFiles(); for(File f:fs){ if(f.isDirectory()) //若是目录,则递归打印该目录下的文件 func(f); if(f.isFile()) //若是文件,直接打印 System.out.println(f); } }}

打印结果:

打印所有文件

⑸ java怎么循环读取目录下的文件内容

JAVA 遍历文件夹下的所有文件(递归调用和非递归调用)
1.不使用递归的方法调用。
public void traverseFolder1(String path) {
int fileNum = 0, folderNum = 0;
File file = new File(path);
if (file.exists()) {
LinkedList<File> list = new LinkedList<File>();
File[] files = file.listFiles();
for (File file2 : files) {
if (file2.isDirectory()) {
System.out.println("文件夹:" + file2.getAbsolutePath());
list.add(file2);
fileNum++;
} else {
System.out.println("文件:" + file2.getAbsolutePath());
folderNum++;
}
}
File temp_file;
while (!list.isEmpty()) {
temp_file = list.removeFirst();
files = temp_file.listFiles();
for (File file2 : files) {
if (file2.isDirectory()) {
System.out.println("文件夹:" + file2.getAbsolutePath());
list.add(file2);
fileNum++;
} else {
System.out.println("文件:" + file2.getAbsolutePath());
folderNum++;
}
}
}
} else {
System.out.println("文件不存在!");
}
System.out.println("文件夹共有:" + folderNum + ",文件共有:" + fileNum);

}
2.使用递归的方法调用
public static List<File> getFileList(String strPath) {
File dir = new File(strPath);
File[] files = dir.listFiles(); // 该文件目录下文件全部放入数组
if (files != null) {
for (int i = 0; i < files.length; i++) {
String fileName = files[i].getName();
if (files[i].isDirectory()) { // 判断是文件还是文件夹
getFileList(files[i].getAbsolutePath()); // 获取文件绝对路径
} else if (fileName.endsWith("avi")) { // 判断文件名是否以.avi结尾
String strFileName = files[i].getAbsolutePath();
System.out.println("---" + strFileName);
filelist.add(files[i]);
} else {
continue;
}
}

}
return filelist;
}

⑹ java 如何读取指定文件夹内的所有文件夹及文件,然后在页面上以树的形式显示出来。

我给你一个读取指定文件夹下面的所有文件夹,和文件的代码。
至于页面上用树来显示,html的话,这个有点麻烦。
swing的话,你就只需要用DefaultTreeModel.add(new TreeNode("XXX"));

public class GetAllFiles{
private String filePath = "C:/windows"; // 读取C:/windos文件
private File f = null;

public GetAllFiles(){
f = new File(filePath);
}

public List<File> getAllFile(){
File[] fileInF = f.listFiles(); // 得到f文件夹下面的所有文件。
List<File> list = new List<File>();
for(File file : fileInF){
list.add(file);
}
return list;
}

public static void main(String[] args){
new GetAllFiles().getAllFile();
}
}

⑺ java中如何获取目录中的所有文件

public static void list(File path, String[] extArr,HashMap hm) {
if (!path.exists()) {
System.out.println("文件名称不存在!");
} else {
if (path.isFile()) {
for (int i = 0; i < extArr.length; i++) {
if (path.getName().toLowerCase().endsWith(extArr[i])) {// 文件格式
hm.put(path.getName(), path);
}
}

} else {
File[] files = path.listFiles();
for (int i = 0; i < files.length; i++) {
list(files[i], extArr,hm);
}
}
}
}

⑻ Java 如何读取目录下的文件内容

Java读取目录下的文件内容,使用的是java的文件类,示例如下:

importjava.io.BufferedReader;
importjava.io.File;
importjava.io.FileInputStream;
importjava.io.FileReader;
importjava.io.IOException;
importjava.io.InputStream;
importjava.io.InputStreamReader;
importjava.io.RandomAccessFile;
importjava.io.Reader;

publicclassReadFromFile{
/**
*以字节为单位读取文件,常用于读二进制文件,如图片、声音、影像等文件。
*
*@paramfileName
*文件的名
*/
(StringfileName){
Filefile=newFile(fileName);
InputStreamin=null;
try{
System.out.println("以字节为单位读取文件内容,一次读一个字节:");
//一次读一个字节
in=newFileInputStream(file);
inttempbyte;
while((tempbyte=in.read())!=-1){
System.out.write(tempbyte);
}
in.close();
}catch(IOExceptione){
e.printStackTrace();
return;
}
try{
System.out.println("以字节为单位读取文件内容,一次读多个字节:");
//一次读多个字节
byte[]tempbytes=newbyte[100];
intbyteread=0;
in=newFileInputStream(fileName);
ReadFromFile.showAvailableBytes(in);
//读入多个字节到字节数组中,byteread为一次读入的字节数
while((byteread=in.read(tempbytes))!=-1){
System.out.write(tempbytes,0,byteread);
}
}catch(Exceptione1){
e1.printStackTrace();
}finally{
if(in!=null){
try{
in.close();
}catch(IOExceptione1){
}
}
}
}

/**
*以字符为单位读取文件,常用于读文本,数字等类型的文件
*
*@paramfileName
*文件名
*/
(StringfileName){
Filefile=newFile(fileName);
Readerreader=null;
try{
System.out.println("以字符为单位读取文件内容,一次读一个字节:");
//一次读一个字符
reader=newInputStreamReader(newFileInputStream(file));
inttempchar;
while((tempchar=reader.read())!=-1){
//对于windows下, 这两个字符在一起时,表示一个换行。
//但如果这两个字符分开显示时,会换两次行。
//因此,屏蔽掉 ,或者屏蔽 。否则,将会多出很多空行。
if(((char)tempchar)!=' '){
System.out.print((char)tempchar);
}
}
reader.close();
}catch(Exceptione){
e.printStackTrace();
}
try{
System.out.println("以字符为单位读取文件内容,一次读多个字节:");
//一次读多个字符
char[]tempchars=newchar[30];
intcharread=0;
reader=newInputStreamReader(newFileInputStream(fileName));
//读入多个字符到字符数组中,charread为一次读取字符数
while((charread=reader.read(tempchars))!=-1){
//同样屏蔽掉 不显示
if((charread==tempchars.length)
&&(tempchars[tempchars.length-1]!=' ')){
System.out.print(tempchars);
}else{
for(inti=0;i<charread;i++){
if(tempchars[i]==' '){
continue;
}else{
System.out.print(tempchars[i]);
}
}
}
}

}catch(Exceptione1){
e1.printStackTrace();
}finally{
if(reader!=null){
try{
reader.close();
}catch(IOExceptione1){
}
}
}
}

/**
*以行为单位读取文件,常用于读面向行的格式化文件
*
*@paramfileName
*文件名
*/
(StringfileName){
Filefile=newFile(fileName);
BufferedReaderreader=null;
try{
System.out.println("以行为单位读取文件内容,一次读一整行:");
reader=newBufferedReader(newFileReader(file));
StringtempString=null;
intline=1;
//一次读入一行,直到读入null为文件结束
while((tempString=reader.readLine())!=null){
//显示行号
System.out.println("line"+line+":"+tempString);
line++;
}
reader.close();
}catch(IOExceptione){
e.printStackTrace();
}finally{
if(reader!=null){
try{
reader.close();
}catch(IOExceptione1){
}
}
}
}

/**
*随机读取文件内容
*
*@paramfileName
*文件名
*/
(StringfileName){
RandomAccessFilerandomFile=null;
try{
System.out.println("随机读取一段文件内容:");
//打开一个随机访问文件流,按只读方式
randomFile=newRandomAccessFile(fileName,"r");
//文件长度,字节数
longfileLength=randomFile.length();
//读文件的起始位置
intbeginIndex=(fileLength>4)?4:0;
//将读文件的开始位置移到beginIndex位置。
randomFile.seek(beginIndex);
byte[]bytes=newbyte[10];
intbyteread=0;
//一次读10个字节,如果文件内容不足10个字节,则读剩下的字节。
//将一次读取的字节数赋给byteread
while((byteread=randomFile.read(bytes))!=-1){
System.out.write(bytes,0,byteread);
}
}catch(IOExceptione){
e.printStackTrace();
}finally{
if(randomFile!=null){
try{
randomFile.close();
}catch(IOExceptione1){
}
}
}
}

/**
*显示输入流中还剩的字节数
*
*@paramin
*/
(InputStreamin){
try{
System.out.println("当前字节输入流中的字节数为:"+in.available());
}catch(IOExceptione){
e.printStackTrace();
}
}

publicstaticvoidmain(String[]args){
StringfileName="C:/temp/newTemp.txt";
ReadFromFile.readFileByBytes(fileName);
ReadFromFile.readFileByChars(fileName);
ReadFromFile.readFileByLines(fileName);
ReadFromFile.readFileByRandomAccess(fileName);
}
}

⑼ java列出文件夹下的所有文件

/**
*获取指定路径下的所有文件列表
*
*@paramdir要查找的目录
*@return
*/
publicstaticList<String>getFileList(Stringdir){
List<String>listFile=newArrayList<>();
FiledirFile=newFile(dir);
//如果不是目录文件,则直接返回
if(dirFile.isDirectory()){
//获得文件夹下的文件列表,然后根据文件类型分别处理
File[]files=dirFile.listFiles();
if(null!=files&&files.length>0){
//根据时间排序
Arrays.sort(files,newComparator<File>(){
publicintcompare(Filef1,Filef2){
return(int)(f1.lastModified()-f2.lastModified());
}

publicbooleanequals(Objectobj){
returntrue;
}
});
for(Filefile:files){
//如果不是目录,直接添加
if(!file.isDirectory()){
listFile.add(file.getAbsolutePath());
}else{
//对于目录文件,递归调用
listFile.addAll(getFileList(file.getAbsolutePath()));
}
}
}
}
returnlistFile;
}

⑽ java代码 读取一个文件夹下的所有文件夹及里面的文件。

我给你个例子,你把其中的路径File file = new File("c:\\tmp\\5");改成你的路径就行了。
public class Test2
{
public static void main(String[] args)
{
File file = new File("c:\\tmp\\5");
Test2 t = new Test2();
t.method(file);
}

public void method(File f)
{
File[] FList = f.listFiles();
for (int i = 0; i < FList.length; i++)
{
if (FList[i].isDirectory()==true)
{
method(FList[i]);
}
else
{
System.out.println(FList[i].getAbsolutePath());
}
}
}
}

阅读全文

与java获取目录下所有文件相关的资料

热点内容
PC机与单片机通讯 浏览:674
二级加密图 浏览:113
压缩机异音影响制冷吗 浏览:711
德斯兰压缩机 浏览:490
程序员太极拳视频 浏览:531
网上购买加密锁 浏览:825
安卓为什么软件要隐私 浏览:83
虚拟主机管理源码 浏览:811
java图形图像 浏览:230
单片机输出口电平 浏览:486
java配置数据库连接 浏览:479
java多态的体现 浏览:554
java的split分隔符 浏览:128
跪着敲代码的程序员 浏览:238
web和php有什么区别 浏览:120
加密的电梯卡怎么复制苹果手机 浏览:218
warez压缩 浏览:137
黑马程序员培训机构官网天津 浏览:904
mainjavasrc 浏览:59
如何买服务器挖矿 浏览:292