【问题标题】:Java check if string is valid fileJava检查字符串是否是有效文件
【发布时间】:2014-12-04 10:14:30
【问题描述】:

我想检查一个字符串是否是一个有效的文件模式,我想要的是:

如果string = "/abc/def/apple.xml" 那么return TRUE

如果string = "/abc/def/" 那么return FALSE

如果string = "/abc/def" 那么return FALSE

我的代码:

String filepath = "/abc/def/apple.xml";
File f = new File(filepath);

if(f.isFile() && !f.isDirectory())
 return true;
else
  return false;

使用我的代码我将字符串设置为/abc/def/apple.xml/abc/def/,两者都返回false,不太清楚为什么

【问题讨论】:

  • 我也试过 if(f.exists() && !f.​​isDirectory()) 也没用
  • 文件在哪里?
  • 您是要检查所提到的文件是否存在于给定位置,还是要检查字符串并查看它是否看起来像一个文件名?
  • 实际上这个文件路径是一个存储在数据库中的字符串,我只是想在继续之前验证字符串。
  • @user3172596 你不关心文件是否存在只是看起来像文件路径吗?

标签: java


【解决方案1】:

你应该试试这个:

String filePath = "yourPath/file.txt"; 
Path path = Paths.get(filePath);
System.out.println(Files.exists(path, LinkOption.NOFOLLOW_LINKS));

【讨论】:

    【解决方案2】:

    如果您能够使用 Java 7(或更高版本),则可以使用新的新 IO。 Oracle 提供了一个关于此的教程:

    http://docs.oracle.com/javase/tutorial/essential/io/check.html

    【讨论】:

      【解决方案3】:

      如果您非常确定它包含 .xml 的文件路径,那么您也可以以这种方式完成任务

      String path="abc/bcd/efg.xml";
      boolean temp=path.endsWith(".xml") ;
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2013-02-13
        • 2019-05-05
        • 2019-10-04
        • 2014-12-05
        • 1970-01-01
        • 1970-01-01
        • 2014-02-09
        • 1970-01-01
        相关资源
        最近更新 更多