355得票4回答
在Java7中如何通过字符串创建路径

我该如何在Java 7中从String对象创建一个java.nio.file.Path对象? 即:String textPath = "c:/dir1/dir2/dir3"; Path path = ?; 其中?是使用textPath的缺失代码。

342得票30回答
在Java中递归列出文件

如何在Java中递归列出目录下的所有文件?框架是否提供任何实用工具? 我看到了很多hacky实现,但都不是来自框架或nio。

238得票8回答
Java:路径 vs 文件

对于使用Java 7编写的新应用程序,是否还有使用java.io.File对象的理由?还是可以将其视为已被弃用? 我认为java.nio.file.Path可以完成所有java.io.File所能做的事情,并且更加强大。

177得票7回答
Java NIO的FileChannel与FileOutputStream性能/用途对比

我正在尝试弄清楚使用NIO的FileChannel和普通的FileInputStream/FileOutputStream读写文件到文件系统时是否存在性能差异(或优势)。我观察到,在我的机器上,两者的表现水平相同,而且很多时候使用FileChannel的方式会更慢。请问这两种方法的比较细节。这...

165得票4回答
ByteBuffer.allocate() 和 ByteBuffer.allocateDirect() 的区别

allocate() 还是 allocateDirect(),这是个问题。 多年来,我一直认为由于 DirectByteBuffer 是在操作系统层面上的直接内存映射,使用 get/put 调用速度比 HeapByteBuffer 更快。直到现在我才对这种情况感兴趣并想要了解确切的细节。我...

115得票6回答
Java中从ByteBuffer获取字节数组

这是获取ByteBuffer中字节的推荐方式吗?ByteBuffer bb =.. byte[] b = new byte[bb.remaining()] bb.get(b, 0, b.length);

96得票3回答
Java:将字符串转换为ByteBuffer和从ByteBuffer转换回字符串以及相关问题

我正在使用Java NIO进行套接字连接,并且我的协议是基于文本的,因此在将它们写入SocketChannel之前,我需要能够将字符串转换为ByteBuffer,并将传入的ByteBuffer转换回字符串。目前,我正在使用以下代码:public static Charset charset =...

96得票4回答
Java NIO:IOException:Broken pipe 的意思是什么?

对于一些Java NIO连接,当我调用 SocketChannel.write(ByteBuffer)方法时,会抛出一个 IOException :“Broken pipe”。 什么会导致“broken pipe”,更重要的是,是否有可能从这种状态中恢复?如果无法恢复,似乎这将是一个好迹象,...

94得票3回答
Java: NIO和NIO.2之间到底有什么区别?

我对于这两个包的不同并不是很清楚,所以我有一些关于这两个包的问题。 在 Google 上查阅了一下后,似乎 Oracle 决定将 NIO 包更新为 JDK7 发布的新版和增强版的 NIO.2 包。 NIO 包与 NIO.2 包的性能如何相比? 从 NIO 到 NIO.2 有哪些重大变化?...

78得票1回答
Java 7新IO API - Paths.exists

有人知道最新Java 7 API中path.exists() API方法发生了什么吗?在变更日志中我找不到这个方法的变更记录,在b123和b130之间,该方法已经从API中删除了。 我看到有一个静态的Files.exists方法,但我不确定它是否是替换方法。 有没有人正在密切跟踪Java 7...