gpt4 book ai didi

java - 在 Java 中找不到存在的文件

转载 作者:行者123 更新时间:2023-12-02 10:43:17 24 4
gpt4 key购买 nike

我有一个 Java 程序,可以搜索您的 cookie 文件,然后将每个文件保存到一个数组中。然后,我尝试在每个文件中搜索某个字符串,但是当我尝试搜索我知道存在的文件时,java 告诉我它们不存在。有什么想法吗?

这是迄今为止我的代码:

   import java.io.*;
import java.util.*;

public class CheckCookie
{
static String[] textFiles = new String[100];
static String userName = "";

public static void findCookies()
{

String path = "pathtocookies";

String files;
File folder = new File(path);
File[] listOfFiles = folder.listFiles();

for (int i = 0; i < listOfFiles.length; i++)
{

if (listOfFiles[i].isFile())
{
files = listOfFiles[i].getName();
if (files.endsWith(".txt") || files.endsWith(".TXT"))
{
textFiles[i] = files;
}
}
}
}

public static boolean searchCookies()
{
for(int j = 0; j < textFiles.length; j++) {
String path2 = "pathtocookies"+textFiles[j];
File file = new File(path2);

try {
Scanner scan = new Scanner(file);
while (scan.hasNext()) {
String line = scan.nextLine();
if(line.contains("ineligible_age")) {
System.out.println("A cookie for ineligible age was set.");
return true;
}
}

}
catch(FileNotFoundException e) {
System.out.println("File was not found.");
return false;
}
}
System.out.println("A cookie for ineligible age was not set.");
return false;
}

public static void main(String[] args)
{
findCookies();
searchCookies();
System.out.println();
System.out.println("Finished searching for cookies. Yum.");
}

}

实际路径:

C:/Users/lucas.brandt/AppData/Roaming/Microsoft/Windows/Cookies

最佳答案

使用列表而不是数组来存储文本文件。

想象一个包含 2 个文件的目录。第一个是“abc.doc”,第二个是“itsme.txt”

您的 textFiles 数组将如下所示:

  • textFiles[0]:空
  • textFiles[1]:“itsme.txt”

因此,您尝试访问“pathtocookies”+“null”,这将失败,您转到 catch 并从函数中返回。

进一步提示:

  • 从第一个函数返回列表,将其用作第二个函数的参数
  • 使用调试器或“调试”打印语句来调试代码以查看发生了什么

更多提示取决于实际用例。

--待定

关于java - 在 Java 中找不到存在的文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13071511/

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