//创建一个ftpclient对象
FTPClient fc=new FTPClient();
//创建连接
fcconnect("ip地址", 端口号);
//登录
fclogin("用户名","密码");
//校验登陆
reply = fcgetReplyCode();
if (!FTPReplyisPositiveCompletion(reply)) {
fcdisconnect();
}
//切换到指定地址
fcchangeWorkingDirectory("地址");
//获取该目录下的所有文件
FTPFile[] fs=fclistFiles();
for(FTPFile ff:fs){
Systemoutprintln(ffgetName());
}
//注销退出
fclogout();
获取一个目录下的所有文件和目录方法:
import javaioFile;public class FileTest {
public static void main(String[] args) {
/
将目标目录封装成 File 对象。
/
File dir = new File("/Users/zym/Desktop/Mac应用程序");
/
获取目录下的所有文件和文件夹
/
String[] names = dirlist();
for (String name : names) {
Systemoutprintln(name);
}
}
}
通过文件过滤器获取某个目录下的文件,例如所有的 txt、doc文件。
过滤器:
import javaioFile;import javaioFilenameFilter;
public class FilterByDoc implements FilenameFilter {
@Override
public boolean accept(File dir, String name) {
return nameendsWith("doc");
}
}
获取某个目录下的按照过滤器规则的所有文件:
import javaioFile;public class FileTest {
public static void main(String[] args) {
/
将目标目录封装成 File 对象。
/
File dir = new File("/Users/zym/Desktop/Mac应用程序");
/
通过过滤器获取目录下的所有的 doc 文件
/
String[] names = dirlist(new FilterByDoc());
for (String name : names) {
Systemoutprintln(name);
}
}
}
希望能对您有所帮助!
java中获得一个文件夹中的所有文件名代码如下:
package comreadfile;
import javaioFile;public class GetAllFiles {
public static void main(String[] args) {
//路径 这里写一个路径进去
String path="F:\\QQ文档";
//调用方法
getFiles(path);
}
/
递归获取某路径下的所有文件,文件夹,并输出
/
public static void getFiles(String path) {
File file = new File(path);
// 如果这个路径是文件夹
if (fileisDirectory()) {
// 获取路径下的所有文件
File[] files = filelistFiles();
for (int i = 0; i < fileslength; i++) {
// 如果还是文件夹 递归获取里面的文件 文件夹
if (files[i]isDirectory()) {
Systemoutprintln("目录:" + files[i]getPath());
getFiles(files[i]getPath());
} else {
Systemoutprintln("文件:" + files[i]getPath());
}
}
} else {
Systemoutprintln("文件:" + filegetPath());
}
}
}
扩展资料:
如果想要获得当前文件中的文件名只需要String [] fileName = filelist();就可以了。
如果要包括文件中的文件名就可以用递归的方式。下面是两个具体的实现。
其中public static String [] getFileName(String path)是只得到当前文件中的文件名。
public static void getAllFileName(String path,ArrayList<String> fileName)是包括当前文件及其子文件的文件名。
参考资料:
百度百科-Java
import javaioFile;
import javaioFileFilter;
public class C {
public static void main(String[] args) {
String root = "C:\\";
File file = new File(root);
//folders保存所有根目录下面的文件夹。。
File[] folders = filelistFiles(new FileFilter(){
public boolean accept(File fl) {
return flisDirectory();
}
});
}
}
最原始的方法可以遍历所有盘符文件
public class Path
{
private final List<File> list=new ArrayList<File>();
private String directory;
public Path(String s)
{
thisdirectory=s;
}
private void genPath()
{
File[] roots=FilelistRoots();
for(File root:roots)
searchExists(root);
}
private void searchExists(File file)
{
String tempPath=filegetAbsolutePath();
if(tempPathcontains(directory)
&&(tempPathsubstring(tempPathlastIndexOf(directory))equals(directory)))
listadd(file);
if(fileisDirectory()&&filelist()!=null)
{
File[] files=filelistFiles();
for(File f:files)
{
searchExists(f);
}
}
}
public void listPath()
{
genPath();
for(File file:list)
Systemoutprintln(filegetAbsolutePath());
}
public static void main(String[] args) throws UnsupportedEncodingException
{
Path p=new Path("CS16");
plistPath();
}
}
测试正确,但性能太差,考虑用好的文件查找算法和多线程来作
平时写程序的时候,很多时候提示文件找不到,而抛出了异常,现在整理如下 一 相对路径的获得 说明:相对路径(即不写明时候到底相对谁)均可通过以下方式获得(不论是一般的java项目还是web项目) String relativelyPath=SystemgetProperty(
一个例子,如果有一个Test文件夹里面有testjava和hellotxt如果你想用testjava *** 作hellotxt
只要在testjava中这样写File file=new File("hellotxt");//这样就是相对路径。如果文件结构是
Test文件夹
|------testjava
|------hellotxt
|------source文件夹
|---------worldtxt
如果想在testjava中 *** 作worldtxt。只要这样写File file=new File("source/worldtxt");
另外,在web开发中/代表项目文件夹根目录,当然也有可能代替webapps,区分方法是:如果/开头的uri是给浏览器解析则/代表webapps,如果是给服务器后台解析,则代表项目文件
以上就是关于如何用Java获取远程服务器中指定目录下的所有文件夹名全部的内容,包括:如何用Java获取远程服务器中指定目录下的所有文件夹名、java怎么获取一个目录下的所有文件名、java中怎样获得一个文件夹中的所有文件名等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)