当前位置: 首页 > news >正文

如何用模板做网站西部数据网站管理助手

如何用模板做网站,西部数据网站管理助手,教做奥数的网站,wordpress 数学公式nio2和nio2在Java 7发行之前#xff0c;列出目录内容的领域并没有发生太多事情。但是#xff0c;由于NIO.2引入了一种新的方法来做到这一点#xff0c;因此覆盖这一领域可能是值得的。 NIO.2的一大优点是能够在一个方法调用中立即使用列表和过滤。 这为与文件系统相关的大多… nio2和nio2 在Java 7发行之前列出目录内容的领域并没有发生太多事情。但是由于NIO.2引入了一种新的方法来做到这一点因此覆盖这一领域可能是值得的。 NIO.2的一大优点是能够在一个方法调用中立即使用列表和过滤。 这为与文件系统相关的大多数列表/筛选需求提供了一种优雅的解决方案。 列出根目录 除非我们使用相对路径否则我们需要了解应用程序所处的环境因此我们可以定义绝对路径。 由于文件系统通常是分层结构因此至少有一个根目录。 为了正确处理文件和目录我们需要能够列出所有这些根目录。 为此我们转向FileSystem实例本身以使用其方法getRootDirectories 它是Java 6构造File.listRoots()的替代方法。 IterablePath it FileSystems.getDefault().getRootDirectories();System.out.println(Root file system locations: Sets.newHashSet(it)); *请注意 Sets类不是JDK的一部分而是来自Google的Guava库。 我在这里使用它只是为了方便获得根目录的格式正确的字符串表示形式。 具有以下输出 Root file system locations: C:\, D:\, E:\, F:\, G:\, H:\, I:\,列出和过滤目录内容 使用文件系统时标准任务是列出或过滤给定目录中的文件。 我们可能需要修改分析或简单列出它们-不管什么原因类java.nio.file.Files都有我们的支持。 它提供了newDirectoryStream方法的三种变体它们返回DirectoryStreamPath类型的对象以允许我们遍历目录中的条目。 在这里我们看到了防止NullPointerException的IO库的当前版本与先前版本返回简单数组之间的明显差异。 以下示例说明了列出给定目录内容的简单程度 Path directoryPath Paths.get(C:, Program Files/Java/jdk1.7.0_40/src/java/nio/file);if (Files.isDirectory(directoryPath)) {try (DirectoryStreamPath stream Files.newDirectoryStream(directoryPath)) {for (Path path : stream) {System.out.println(path);}} catch (IOException e) {throw new RuntimeException(e);} } 请注意使用isDirectory检查方法可防止NotDirectoryException 。 还要注意try-with-resources构造的使用– DirectoryStream是AutoCloseable和Closeable 这意味着它需要在某个时间关闭因此try-with-resources派上了用场。 代码返回以下输出 ... C:\Program Files\Java\jdk1.7.0_40\src\java\nio\file\CopyOption.java C:\Program Files\Java\jdk1.7.0_40\src\java\nio\file\DirectoryIteratorException.java C:\Program Files\Java\jdk1.7.0_40\src\java\nio\file\DirectoryNotEmptyException.java C:\Program Files\Java\jdk1.7.0_40\src\java\nio\file\DirectoryStream.java C:\Program Files\Java\jdk1.7.0_40\src\java\nio\file\FileAlreadyExistsException.java C:\Program Files\Java\jdk1.7.0_40\src\java\nio\file\Files.java C:\Program Files\Java\jdk1.7.0_40\src\java\nio\file\FileStore.java C:\Program Files\Java\jdk1.7.0_40\src\java\nio\file\FileSystem.java C:\Program Files\Java\jdk1.7.0_40\src\java\nio\file\FileSystemAlreadyExistsException.java ... 为了确保DirectoryStreamPath通用可用性我们可以使用两种基本机制进行过滤 newDirectoryStream(Path dir, String glob) 使用GLOB过滤 newDirectoryStream (Path dir, DirectoryStream.Filterfilter) 使用DirectoryStream.Filter过滤 使用GLOB模式过滤 首先我们需要知道GLOB是什么。 GLOB模式是遵循特定语法规则的字符串表达式它们用于匹配目的。 请参阅以下文章以获取有关GLOB和GLOB语法的更多信息。 在使用GLOB进行过滤时 Files类为我们提供了一种简便的方法。 让我们看下面的例子。 Path directoryPath Paths.get(C:, Program Files/Java/jdk1.7.0_40/src/java/nio/file);if (Files.isDirectory(directoryPath)) {try (DirectoryStreamPath stream Files.newDirectoryStream(directoryPath, File*Exception*)) {for (Path path : stream) {System.out.println(path);}} catch (IOException e) {throw new RuntimeException(e);} } 具有以下输出 C:\Program Files\Java\jdk1.7.0_40\src\java\nio\file\FileAlreadyExistsException.java C:\Program Files\Java\jdk1.7.0_40\src\java\nio\file\FileSystemAlreadyExistsException.java C:\Program Files\Java\jdk1.7.0_40\src\java\nio\file\FileSystemException.java C:\Program Files\Java\jdk1.7.0_40\src\java\nio\file\FileSystemLoopException.java C:\Program Files\Java\jdk1.7.0_40\src\java\nio\file\FileSystemNotFoundException.java 使用DirectoryStream.Filter进行过滤 当手头的任务需要更复杂的过滤选项而不仅仅是简单的文件名匹配时我们需要实现DirectoryStream.FilterPath接口。 这是我们可以使用的最强大的筛选选项因为我们可以访问应用程序的其余部分并且可能使用第三方库。 下面的示例使用两种过滤条件显示了这种情况 文件大小必须为偶数 执行时间以毫秒为单位必须为偶数 Path directoryPath Paths.get(C:, Program Files/Java/jdk1.7.0_40/src/java/nio/file); DirectoryStream.FilterPath filter new FilterPath() {Overridepublic boolean accept(Path entry) throws IOException {long size Files.readAttributes(entry, BasicFileAttributes.class, LinkOption.NOFOLLOW_LINKS).size();long milis new Date().getTime();boolean isSizeEvenNumber size % 2 0;boolean isTheTimeRight milis % 2 0;return isTheTimeRight isSizeEvenNumber;} };if (Files.isDirectory(directoryPath)) {try (DirectoryStreamPath stream Files.newDirectoryStream(directoryPath, filter)) {for (Path path : stream) {System.out.println(path);}} catch (IOException e) {throw new RuntimeException(e);} } 具有以下输出 C:\Program Files\Java\jdk1.7.0_40\src\java\nio\file\DirectoryStream.java C:\Program Files\Java\jdk1.7.0_40\src\java\nio\file\FileAlreadyExistsException.java C:\Program Files\Java\jdk1.7.0_40\src\java\nio\file\Files.java C:\Program Files\Java\jdk1.7.0_40\src\java\nio\file\NotDirectoryException.java C:\Program Files\Java\jdk1.7.0_40\src\java\nio\file\NotLinkException.java C:\Program Files\Java\jdk1.7.0_40\src\java\nio\file\package-info.java C:\Program Files\Java\jdk1.7.0_40\src\java\nio\file\WatchEvent.java C:\Program Files\Java\jdk1.7.0_40\src\java\nio\file\WatchService.java *请注意根据使用条件每次执行过滤后的文件可能会有所不同。 翻译自: https://www.javacodegeeks.com/2014/06/listing-and-filtering-directory-contents-in-nio-2.htmlnio2和nio2
http://www.yutouwan.com/news/462084/

相关文章:

  • 网站规划与开发实训室建设方案h5在哪个网站中做
  • 重庆做网站建设找谁遵义信息港
  • 我是这样做网站的米课织梦保险网站源码
  • 甘孜州建设局门户网站老男孩linux网站
  • 黄页网站 php打开网站不要出现 index.html
  • 手机网站开发需求 百度云盘网站集约化建设调研报告
  • 东营两学一做网站网站做app服务端
  • 毕业设计做网站有什么好的创意网站建设小
  • 单页面网站如何seo公司网站建设需推广
  • 写作网站哪个好通州区网站制作
  • 河南省建设厅督察网站视觉差网站设计
  • 一个wordpress程序搭建多个网站京东商城网站怎么做
  • 哪些网站可以做平面设计外贸公司的网站怎么做
  • 做网站用什么数据库电子商务网店运营
  • 查询数据的网站怎么做的怎样用编程语言做网站
  • 公司做的网站搜索不到专业邯郸网站建设
  • 江苏建设招标网站凡科系统官网
  • 弹幕网站开发代码开发商
  • 中学网站模板下载昆明做网站比较牛的
  • wordpress 套件一个网站如何优化
  • 网站建设时间查询旅行社网站开发
  • 菏泽网站设计培训企业网络推广搜索排名
  • 自己做网站好还是凡科龙岗区建设局网站
  • 国土 住房与城乡建设部网站wordpress EDD Alipay
  • 网站开发短期培训婚恋网站
  • 网站开发工程师应聘书范文wordpress导航标签文件在哪
  • 南京建站推广公司东莞石碣镇
  • 汕头网站搜索优化石家庄建站
  • 网站模板安全管理系统网络宣传
  • 做网络写手最好进那个网站公众号运营一年多少钱