Java 检查用户输入的文件名/路径是否有效

Java 检查用户输入的文件名/路径是否有效,java,android,file,file-writing,Java,Android,File,File Writing,可能重复: 我试图让用户输入他希望保存某些内容的路径。 所以基本上我打开一个编辑器,让他进入路径 但如何检查输入的字符串是否为有效路径 如果用户最后忘记键入“/”-这不是问题,我可以手动检查 但我无法手动检查所有内容: 末尾的空格(/folder/) 问号 大于-小于符号(/文件夹:->/ (返回)斜杠\文件夹\ 还有那些东西 在java中是否有一种方便的方法来检查它?通用java文件是一个目录或存在,来自: 但是,Android(问题标记为Android),我必须调查…这是针对Android

可能重复:

我试图让用户输入他希望保存某些内容的路径。 所以基本上我打开一个编辑器,让他进入路径

但如何检查输入的字符串是否为有效路径

如果用户最后忘记键入“/”-这不是问题,我可以手动检查

但我无法手动检查所有内容:

末尾的空格(/folder/)

问号

大于-小于符号(/文件夹:->/

(返回)斜杠\文件夹\

还有那些东西


在java中是否有一种方便的方法来检查它?

通用java文件是一个目录或存在,来自:


但是,Android(问题标记为Android),我必须调查…

这是针对Android应用程序的吗?您将其标记为Android,但在问题中没有明确提及。答案不是发布“可能重复”的地方此外,尽管你(在大多数情况下)写信给他,但他在问题中并没有明确提到Android在Java for Android手机中,标记是正确的。@Pompe de velo:Android和标准Java有不同的API,那么在不做假设的情况下,这怎么可能是正确的呢?这不是一个语法相关的问题,而是一个API问题。@Pompe de velo:你是对的,我刚刚找到了重复的进程。对我来说,在下面隐藏“是重复的”“不属于这里”是非常不直观的,因为这个问题确实属于这里,但它已经被问到了。是的,虽然,如果他是为Android添加标签,同时提到文件,你会假设哪一个?然而,解决方案是相同的,即使Java和Android有不同的API:s。
File file = new File("c:\\cygwin\\cygwin.bat");
if (!file.isDirectory())
   file = file.getParentFile();
if (file.exists()) {
    ...
}