gpt4 book ai didi

java - 当我使用字符串作为文件名时,eclipse 扫描仪 filenotfoundException

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

作为一名计算机科学学生,我一直在使用记事本。在记事本中,以下工作正常

class someclass {

public static void main(String[] args) throws Exception{

Scanner in = new Scanner(new File("some.txt"));
}
}

在 netbeans 中,我必须使用“”中包含的实际完整路径,并将代码放入 try catch 中。

然而,在 Eclipse 中,没有任何效果。如果我在“”中使用完整路径名,则会出现转义序列错误。如果我只是使用上面列出的代码,并使用 try catch 和 .close(),我仍然会得到 filenotfound....请告知。

ps,为了我自己的启发,为什么我不必在记事本中关闭或使用try catch?

最佳答案

why do I not have to close or use try catch in notepad?

理论上,您也不需要在 IDE 中执行此操作,但 IDE 比编译器更进一步,会警告您有关非封闭资源等;如果您的 IDE 是这样配置的,则此类警告可能会变成错误。至于 try/catch 这看起来很奇怪,因为你声明了 main 来抛出 Exception

但是 IDE 在这一点上是正确的:当您打开一个 Closeable 资源时,您应该在使用完它后 .close() 它。

If I use the the full path name in "" it gives me an escape sequence error

大胆猜测:您使用 Windows,并直接在两个引号之间粘贴诸如 C:\myfile.txt 的路径。这确实是一个格式错误的字符串:Java 字符串中的反斜杠需要加倍。

I have to use the actual full-path enclosed in ""

这意味着进程的工作目录不在您认为的位置。通常,在 IDE 中,工作目录是项目根目录。将文件移至此工作目录或使用完整路径。

关于java - 当我使用字符串作为文件名时,eclipse 扫描仪 filenotfoundException,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21800089/

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