问题标签 [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.
java - java - 该进程无法访问该文件,因为它正在被另一个进程使用
我有一段代码可以监视目录以添加文件。每当将新文件添加到目录中时,文件的内容都会被挑选并发布到 kafka 上,然后删除该文件。
这在我发出单个请求时有效,但只要我的代码接受来自 jMeter 的 5 或 10 个用户请求,内容就会成功发布在 kafka 上,但代码无法删除文件。我收到一条FileSystemException
消息The process cannot access the file because it is being used by another process.
。
我想有一些我看不到的并发问题。
异常日志:
java - 我应该使用多少线程来使用 java.nio 发送和接收数据?
我正在创建一个包含许多学习机器的分布式系统。我需要在机器之间发送和接收数据,并且我正在使用 java.nio 来创建该网络。在一台机器上,我为 serversocketchannel 使用一个线程从其他机器接收数据,并为每个数据包创建新线程来发送它。这意味着一台机器上一个线程接收和多个线程发送。
但我面临一个问题,由于一个线程处理接收,许多客户端在连接时将处于挂起状态。我应该将其更改为一个线程处理接收和一个线程处理发送吗?谢谢 P/s:我不想使用任何 3rd 方框架。
ftp - Akka-Alpakka Ftp 库是否支持从 URL 获取文件?
我正在为 Ftp 客户端使用https://github.com/akka/alpakka/tree/master/ftp/src这个库。我将文件的 url 作为路径。但正如我从代码实现中看到的,它们只支持函数中的 java.nio.file.Path。
但是我没有本地文件。我只有文件的网址。是否有可能通过 url 获取文件?
java - 如何移动使用 Java.NIO FileSystem 创建的 .zip 文件夹
我使用 FileSystem 创建了一个 .zip 文件夹(压缩文件夹),它存在于 JDK 1.7 及更高版本中的 Java.nio 包中。
现在,我想将压缩文件夹从一个目录移动到另一个目录,但我找不到任何方法来定位压缩文件夹,因为它是一个文件系统并且没有移动它的方法。
Files.move() 仅适用于文件或目录,但不适用于从 FileSystem 创建的压缩文件夹。
谁能指出我正确的方向吗?
java - AWS 的 java.nio.file 实现
有没有官方java.nio.file
的实现AWS
?
我在GoogleCloudStorage
这里找到了一个,并且需要类似的AWS
and Azure
。
java - Using Java 8 NIO, how can I read a file while skipping the first line or header record?
I am trying to read a large file line by line, in java, using NIO library.
But this file also contains headers...
try (Stream<String> stream = Files.lines(Paths.get(schemaFileDir+File.separator+schemaFileNm))){
stream.forEach(s->sch.addRow(s.toString(),file_delim));
}
How do i modify this to skip the first line of the file? Any pointers..?
java - java.nio 中的第一步
我正在移动 java 的第一步,我遇到了这种包。
为什么要引入 java.nio 包,'nio' 代表什么?
java - 在 Java 中,使用 java.nio 库和 FileChannel,如何从文件中加载 Properties 对象?
在 Java 程序中,给了我一个java.nio.Path
对象,我需要锁定一个文件,然后java.util.Properties
从中加载一个对象。
我读到为文件获取共享锁的正确方法,表示为 a Path
,是java.nio.channels.FileChannel
使用共享锁获取锁channel.lock(0L, Long.MAX_VALUE, true)
现在我已经锁定了频道,我假设我现在应该在加载我的属性文件时引用该频道。
但是,我没有看到一种简单的方法可以将 aFileChannel
转换为Properties
. Properties
需要InputStream
, 或Reader
. 我可以实现自己的阅读器,但我确信我的团队宁愿使用开箱即用的东西(如果有的话)。
有谁知道这样的事情?
我的基本假设不正确吗?如果是这样,这个过程的正确流程是什么?
java - NIO.2:理解 relativize() 方法
我正在努力理解这种java.nio.file.Path.relativize()
方法。我也知道有人问过类似的问题,但答案并没有帮助我理解这个概念。
考虑以下代码片段:
有人可以使用逐步的方法向我解释该relativize()
方法在此示例中的工作原理吗?为什么我需要上 5 个目录?
java - 如何在 Java NIO for Unix OS 中设置用户定义的文件属性?
我正在尝试将用户定义的属性设置为文件,例如version=1
文件 foo.txt。这样我version
以后可以检索该属性。
我看到 Java NIO 包提供了这样的机制,我遵循了这个文档。但是,我试图在我的 Unix 操作系统中运行它,它说空指针异常,我也看到博客说它 是特定于窗口的。那么如何在 Unix 中将属性写入文件?
整个源代码如下: https ://gist.github.com/ajayramesh23/e21d6159d8271fe0a4cfaf7209f6fb74
源代码参考博客:http: //javapapers.com/java/file-attributes-using-java-nio/
请提供在 Java 7 或更高版本中设置文件属性的最佳方法。
另外,我看到 Java Doc 在下面的注释中提到了这一点:
笔记:
在 Linux 中,您可能必须启用扩展属性才能使用户定义的属性起作用。如果在尝试访问用户定义的属性视图时收到 UnsupportedOperationException,则需要重新挂载文件系统。以下命令使用 ext3 文件系统的扩展属性重新挂载根分区。如果此命令不适用于您的 Linux 风格,请查阅文档。
$ sudo mount -o remount,user_xattr / If you want to make the change permanent, add an entry to /etc/fstab.
那么如何在不执行上述说明的情况下设置用户定义的属性。