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();