java文件夾下所有文件
Java程序中讀取某個目錄下的所有文件(下面以D盤下的文件夾為例),代碼如下:
import java.io.File;
public class Test1 {
public static void main(String[] args) {
String path="D://";
File file=new File(path);
File[] tempList = file.listFiles();
System.out.println("該目錄下對象個數:"+tempList.length);
for (int i = 0; i < tempList.length; i++) {
if (tempList[i].isFile()) {
//讀取某個文件夾下的所有文件
System.out.println("文件:"+tempList[i]);
}
if (tempList[i].isDirectory()) {
//讀取某個文件夾下的所有文件夾
System.out.println("文件夾:"+tempList[i]);
}
}
}
}
⑵ java怎麼讀取文件夾下的所有文件
上面方法也可以,我這種直接就可以得到名字,不需要先轉化為File對象
File
file=new
File("D:\\");
String
test[];
test=file.list();
for(int
i=0;i
評論
0
0
載入更多
⑶ 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)是包括當前文件及其子文件的文件名。
⑷ 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 文件夾里的全部文件
qdmmy6--:)
import java.io.*;
import java.util.*;
public class Test {
public static ArrayList<File> fun(File file) {
ArrayList<File> arr = new ArrayList<File>();
ArrayList<File> result = new ArrayList<File>();
arr.add(file);
while(arr.size() > 0) {
File fileTop = (File)arr.get(0);
if(fileTop.isDirectory()) {
File[] files = fileTop.listFiles();
for(int i = 0; i < files.length; i++) {
arr.add(0, files[i]);
}
arr.remove(fileTop);
} else {
result.add(arr.remove(0));
}
}
return result;
}
public static void main(String[] args) {
ArrayList<File> result = fun(new File("D:\\myjava"));
for(File f : result) {
System.out.println(f.getName());
}
}
}
⑹ 何用Java代碼列出一個目錄下所有的文件
你好提問者:
如果解決了你的問題,請採納,若有疑問請追問,謝謝!
packagecom.zyx.cn._test;
importjava.io.File;
publicclassGetListFile{
publicstaticvoidmain(String[]args){
showFileName("C:\Test");
}
privatestaticvoidshowFileName(Stringpath){
Filefile=newFile(path);
if(file.exists()){//判斷文件是否存在
if(file.isDirectory()){//判斷file是否是文件夾
File[]listFiles=file.listFiles();//獲取文件下的子文件
//目錄下文件
if(listFiles.length==0){
System.out.println("該文件夾下沒有文件");
}
for(Filef:listFiles){
if(f.isDirectory()){//判斷file是否是文件夾
System.out.println("文件夾:"+f.getName());
showFileName(f.getAbsolutePath());//文件夾就繼續遍歷下的子文件
}elseif(f.isFile()){
System.out.println("文件:"+f.getName());
}else{
System.err.println("未知錯誤");
}
}
}
}
}
}
結果:
文件:Test.docx
文件:test.txt
文件:Wb.java
⑺ JAVA遍歷一個文件夾中的所有文件---(遞歸)
public void traverseFolder2(String path) {
File file = new File(path);
if (file.exists()) {
File[] files = file.listFiles();
if (null == files || files.length == 0) {
System.out.println("文件夾是空的!");
return;
} else {
for (File file2 : files) {
if (file2.isDirectory()) {
System.out.println("文件夾:" + file2.getAbsolutePath());
traverseFolder2(file2.getAbsolutePath());
} else {
System.out.println("文件:" + file2.getAbsolutePath());
}
}
}
} else {
System.out.println("文件不存在!");
}
}
(7)java文件夾下所有文件擴展閱讀
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);
foldeNum++;
} else {
System.out.println("文件:" + file2.getAbsolutePath());
fileNum++;
}
}
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);
folderNum++;
} else {
System.out.println("文件:" + file2.getAbsolutePath());
fileNum++;
}
}
}
} else {
System.out.println("文件不存在!");
}
System.out.println("文件夾共有:" + folderNum + ",文件共有:" + fileNum);
}
⑻ 在java中如何遍歷某個路徑下的所有文件夾和文件
首先,我們先來遍歷一下D盤根目錄下所有的子文件:public
static
void
fileList()
{
File
file=new
File("d:/");
File[]
files
=
file.listFiles();
if
(files
!=
null)
{
for
(File
f
:
files)
{
System.out.println(f.getPath());
}
}
}對此,我們肯定不滿足,我們需要遍歷D盤下所有的文件和文件夾,而不是根目錄下的文件夾,這個時候我們需要使用到遞歸:public
static
void
fileList(File
file)
{
File[]
files
=
file.listFiles();
if
(files
!=
null)
{
for
(File
f
:
files)
{
System.out.println(f.getPath());
fileList(f);
}
}
}然後在主函數中調用:public
static
void
main(String[]
args)
{
File
file=new
File("d:/");
fileList(file);
}結果是不是能令你滿意呢?顯然,輸出的都是全路徑,我們可以對我們的遞歸函數做如下改進:
public
static
void
fileList(File
file,int
node)
{
node++;
File[]
files
=
file.listFiles();
if
(files
!=
null)
{
for
(File
f
:
files)
{
for(int
i=0;i<node;i++){
if(i==node-1){
System.out.print("├");
}
else{
System.out.print("
");
}
}
System.out.println(f.getName());
fileList(f,node);
}
}
}然後再次在主函數中調用:public
static
void
main(String[]
args)
{
File
file=new
File("d:/");
fileList(file,0);
}得到的結果是一個類似樹狀的結構,如果你對此還不滿意,可以嘗試給JTree上添加節點,可以做到和資源管理器中一樣的結構。
⑼ java怎麼獲取一個目錄下的所有文件名
Filefile=newFile("E:\program\work");
File[]cFile=file.listFiles();
for(inti=0;i<cFile.length;i++){
Stringname=cFile[i].getName();
System.out.println(name);
}