问题标签 [java.nio.file]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
3 回答
3463 浏览

java - 如何使用jdk7移动目录

使用jdk7,我正在尝试使用java.nio.file.Files该类一个空目录移动Bar到另一个空目录中,比如说Foo

执行该代码片段后,我预计该Bar目录将位于Foo目录 ( ...\Foo\Bar) 中。相反,它不是。这是踢球者,它也被删除了。此外,没有抛出异常

我做错了吗?

笔记

我正在寻找特定于 jdk7 的解决方案。我也在研究这个问题,但我想我会看看是否还有其他人在玩 jdk7。

编辑

除了接受的答案之外,这是另一个解决方案

0 投票
1 回答
1157 浏览

java - 如何在 newBufferWriter 中设置路径

我怎样才能设置正确的路径newBufferWriter。我得到了newBufferWriter来自 oracle 页面的示例用法:

我很困惑如何设置file参数,我应该在哪里获取Path对象,例如我想在目录中创建文件,所以我必须设置一个Path对象,并且在这段代码中路径对象是file参数所以,如何给它是一个字符串值?或者如何给它我想要创建某个文件的目录的任何值?

还有别的,那个例外呢?这是什么意思 ?

线程“AWT-EventQueue-0”中的异常 java.lang.NoClassDefFoundError: java/nio/file/Path

0 投票
2 回答
1519 浏览

java - 如何在 Windows 机器上获取 sun.nio.fs.UnixFileSystem 的实例?

特别是,我想使用 (不幸的是不可见) sun.nio.fs.Globs.toUnixRegexPattern(String glob)

好的,退后一步并提供一些背景信息

我有一个路径迭代器到一个远程的、类似 unix 的文件系统(想想ssh unixhost find path -type f)。我还有一个用户提供的 glob 模式,我现在想匹配每条路径。

在 unix 机器上,以下工作正常:

但是当它在 Windows 上运行时,相同的程序完全失败,因为 FileSystems.getDefault() 返回一个 Windows 文件系统(恐怖,恐怖)并且 '\' 用作分隔符,等等。你得到了图片。没有什么匹配的。

当然我可以停止所有这些废话,只是重写(或者更确切地说,复制)sun.nio.fs.Globs.toUnixRegexPattern(String glob),但是还有另一种更优雅的方式吗?

0 投票
1 回答
1615 浏览

java - JDK 7 java.nio.file isSymbolicLink() 行为

我正在尝试使用 JDK 7 (java.nio.file) 中的 FileWalkTree()方法。为了实现我自己的 FileVisitor,我通过扩展SimpleFileVisitor创建了一个CustomFileVIsitor类。

在这个CustomFileVIsitor类中....我重写了函数visitFile

现在,为了测试这段代码,我创建了一个文件夹,然后向它添加了一个文件和一个符号链接(到文件)。

当我使用 FileWalkTree 执行类时,由 Files.isSymbolicLink(file) 和 fileStats.isSymbolicLink() 为符号链接生成的输出不同

输出如下所示:

为什么会这样?这是一个错误还是我在解释信息时遗漏了什么?

0 投票
1 回答
2265 浏览

java - NIO 挂断问题?

我在使用 NIO 框架在主机和客户端之间通过 SocketChannel 发送数据时遇到问题。

我以前从来没有真正费心学习过 NIO,但是随着 java.nio.files 包的引入和其他各种改进,我想我会尝试一下。

我能够让 SocketChannel 和 ServerSocketChannel 正常连接,但实际的数据传输表现得很奇怪。它永远不会在客户端正确完成,总是在最终读取后挂断。此外,它有时会读取不正确的数据量(太多或太少),甚至会导致 Windows 资源管理器发疯并按字面意思分配系统的所有内存,从而导致计算机崩溃。

这是我现在拥有的代码(它是测试代码):


0 投票
2 回答
1548 浏览

java - Java7 / 枚举构造函数 / Files.createTempDirectory(String prefix, FileAttribute ... attrs)

我想为枚举构造函数创建一个 Path 实例:

Files.createTempDirectory(String, FilleAttribute<?> atts)抛出检查异常(IOException),但我如何捕获或抛出异常,或者更准确地说,我如何处理异常?似乎是一个转储问题,但我现在不知道。

0 投票
2 回答
13801 浏览

java - 如何在 JDK7 中使用目录通配符

从文档和示例开始,我一直在尝试使用 JDK7 中的新通配符功能

我可以获得诸如"glob:*.dat"

示例,但我一直无法使"**"语法正常工作。我希望能够创建类似的东西:

并会感谢一个简单的例子。我正在使用 Windows 7。

更新:@Oleg 和@JBNizet 清楚地表明“/”语法是独立于操作系统的。请注意,Javadocs建议依赖于操作系统的语法也是可能的(?必需的)

仍然存在的问题:已采取@Nizet 并编辑如下:

这给出了如下输出:

但没有匹配的证据

0 投票
1 回答
1140 浏览

java - Java NIO2 - 返回一个递归集合

我正在研究 Java7 中的新功能。我想在给定特定输入目录的情况下返回 Collection 对象。

目前我正在使用(org.apache.commons.io)

相反,我想做类似的事情:

但是,我在示例/文档中没有看到任何具体的内容。我看到 DirectoryStreams,它似乎不做递归。我还看到了让您对当前对象执行操作而不是将其添加到集合中的 Vistor。

有没有人有一个以正确方式执行此操作的 Java7 示例?

谢谢!

0 投票
2 回答
465 浏览

java-7 - 为什么 Java 7 运行时与 java.nio 子包的 Java 7 文档不一致?

我的 Linux 工作站上的 java.nio 子包的 Java 7 运行时库和 Java 7 文档之间存在多个不一致之处。例如,类

我认为官方文档http://docs.oracle.com/javase/7/docs/api/中甚至都不存在。

有谁知道为什么存在这些差异和/或解决方法?

0 投票
1 回答
29664 浏览

java - 在 java.io.WinNTFileSystem.createFileExclusively 上摆脱 java.io.Exception 很热?

我目前遇到的问题是我遇到了以前从未见过的异常​​,这就是为什么我不知道如何处理它。

我想根据给定的参数创建一个文件,但它不起作用。

每次我运行我的应用程序时,都会发生以下异常:

我该如何摆脱它?(我正在使用Win7 64位顺便说一句)