java讀取所有文件
Ⅰ java 怎麼通過url獲取遠程伺服器上某個文件夾下的所有文件名
/**
* 讀取某個文件夾下的所有文件
*/
public static boolean readfile(String filepath) throws FileNotFoundException, IOException {
try {
File file = new File(filepath);
if (!file.isDirectory()) {
System.out.println("文件");
System.out.println("path=" + file.getPath());
System.out.println("absolutepath=" + file.getAbsolutePath());
System.out.println("name=" + file.getName());
} else if (file.isDirectory()) {
System.out.println("文件夾");
String[] filelist = file.list();
for (int i = 0; i < filelist.length; i++) {
File readfile = new File(filepath + "\\" + filelist[i]);
if (!readfile.isDirectory()) {
System.out.println("path=" + readfile.getPath());
System.out.println("absolutepath="
+ readfile.getAbsolutePath());
System.out.println("name=" + readfile.getName());
} else if (readfile.isDirectory()) {
readfile(filepath + "\\" + filelist[i]);
}
}
}
} catch (FileNotFoundException e) {
System.out.println("readfile() Exception:" + e.getMessage());
}
return true;
}
Ⅱ 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怎麼循環讀取目錄下的文件內容
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獲取遠程伺服器中指定目錄下的所有文件夾名
//創建一個ftpclient對象
FTPClientfc=newFTPClient();
//創建連接
fc.connect("ip地址",埠號);
//登錄
fc.login("用戶名","密碼");
//校驗登陸
reply=fc.getReplyCode();
if(!FTPReply.isPositiveCompletion(reply)){
fc.disconnect();
}
//切換到指定地址
fc.changeWorkingDirectory("地址");
//獲取該目錄下的所有文件
FTPFile[]fs=fc.listFiles();
for(FTPFileff:fs){
System.out.println(ff.getName());
}
//注銷退出
fc.logout();