注意:问题无效,问题是由放置错误的引起的
。该问题已标记,以便版主删除。
我创建了一个函数来检查(文件/目录)路径是否有效,而不检查它是否存在;
public static boolean isValidPath(String path) {
File f = new File(path);
try {
f.getCanonicalPath();
return true;
} catch (IOException e) {
return false;
}
}
问题是
文件。getCanonicalPath()
在任何目录以点开头时返回错误,尽管它是Windows的有效目录路径。这会导致函数返回
false
,该值应为true
。例如路径C:\Users\Tim\AppData\Roaming\。minecraft\bin
返回false
,而C:\Users\Tim\AppData\Roaming\minecraft\bin
在minecraft目录上不带点返回true
。目录名中带有点的第一个路径确实存在于我的系统中,我正在运行64位Windows 7。是否有其他功能来检查路径是否有效,或者我还能做些什么来解决此问题?
目录名中带有点的第一个路径确实存在于我的系统中,我正在运行64位Windows 7。
所以你会得到
如果发生I/O错误,这是可能的,因为规范路径名的构造可能需要文件系统查询。
是否有其他函数来检查路径是否有效?试试这个:
File file = new File("c:\fileName");
if (!file.isDirectory())
file = file.getParentFile();
if (file.exists()){
...
}
import java.io.*;
class TestDirWithDot {
public static boolean isValidPath(String path) {
File f = new File(path);
try {
f.getCanonicalPath();
return true;
} catch (IOException e) {
e.printStackTrace();
return false;
}
}
public static void main(String[] arg) {
System.out.println(System.getProperty("os.name"));
String path = ".dir";
System.out.println(isValidPath(path));
}
}
Windows Vista
true
当我输入注册号时,当它以后一个B开头时,它应该返回值true,反之亦然,但在这个编码中,当我输入bhu132时,它将值变为false。这里怎么了..请帮帮我
我想在PowerShell中发出POST请求。以下是Postman中的正文详细信息。 如何在PowerShell中传递此消息?
问题内容: 我在node.js中编写一个函数来查询PostgreSQL表。 如果该行存在,我想从该行返回id列。 如果不存在,我想将其插入并返回ID()。 我一直在尝试和语句的变体,但似乎无法使其正常工作。 问题答案: 我建议在数据库端进行检查,然后将ID返回给nodejs。 例子: 而不是在Node.js端(在此示例中,我使用的是node-postgres):
问题内容: 我现在正在使用Microsoft SQL,我的代码是: 我希望当[avail]存在时,返回[avail]的值,如果不存在,则返回0或“未找到” 谢谢! 问题答案: 你可以用这个
我正在尝试使用python中的shutil将文本文件从一个文件夹复制到另一个文件夹。我写了以下几行: 但每次我调用此代码时,都会出现错误2。错误的回溯为
我正在创建一个允许调整gif大小的小类。为此,我创建了一个包含所有帧的临时目录,调整它们的大小,然后再次创建gif。 创建gif后,我想删除我的临时目录。但一旦我的所有文件都被删除,我就会出现以下错误: 警告:目录不为空 这是我的密码: 这是我得到的: 正如您所看到的,没有隐藏文件,因为scandir没有返回任何文件<如你所见,我尝试了这个解决方案,但没有成功 我可以手动删除它,一旦代码完成,里面