gpt4 book ai didi

java - 搜索文件 - Java - 需要升级

转载 作者:太空宇宙 更新时间:2023-11-04 07:08:38 25 4
gpt4 key购买 nike

我需要向这个 Java 程序添加两个小内容。

  1. 当我尝试搜索文件时,我需要使其显示完整路径。目前,当我搜索 xmen.txt 时,它只显示 E:\books\comics\。我试图让它显示 E:\books\comics\xmen.txt 作为结果。

  2. 如果搜索时没有类似名称的文件,我需要让它显示“找不到结果”。

此外,我没有接受过 Java 培训,该程序用于完成有关“搜索可能性”主题的文书作业。我试图通过在主题中添加面向对象的编程来让它变得更酷。

class FindFile
{
public void findFile(String name, File file)
{
File[] list = file.listFiles();
if(list!=null)
for (File fil : list)
{
if (fil.isDirectory())
{
findFile(name,fil);
}
else if (name.equalsIgnoreCase(fil.getName()))
{
System.out.println(fil.getParentFile());
}
}
}

public static void main(String[] args)
{
FindFile ff = new FindFile();
Scanner scan = new Scanner(System.in);
System.out.println("Write the file you are trying to find:" );
String name = scan.next();
System.out.println("Write the directory where you want to search for the file");
String directory = scan.next();
System.out.println("File was found in: ");
ff.findFile(name,new File(directory));
}
}

最佳答案

像这样,但这需要一些工作:

import java.io.*;
import java.util.*;
class FindFile
{
public String findFile(String name,File file) throws IOException
{
File[] list = file.listFiles();
if (list != null)
{
for (File fil : list)
{
if (fil.isDirectory())
{
return findFile(name,fil);
}
else if (name.equalsIgnoreCase(fil.getName()))
{
return fil.getCanonicalPath();
}
}
}
return null;
}

public static void main(String[] args) throws IOException
{
FindFile ff = new FindFile();
Scanner scan = new Scanner(System.in);
System.out.println("Write the file you are trying to find:" );
String name = scan.next();
System.out.println("Write the directory where you want to search for the file");
String directory = scan.next();
String foundFile = ff.findFile(name,new File(directory));
if (foundFile != null)
{
System.out.println("File was found in: " + foundFile);
}
else
{
System.out.println("File was not found");
}

}
}

关于java - 搜索文件 - Java - 需要升级,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20960897/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com