Questions tagged «nio»



7
Java:路径与文件
对于用Java 7编写的新应用程序,是否有理由再使用一个java.io.File对象,或者我们可以认为它已被弃用? 我相信,一个人java.nio.file.Path可以做的一切java.io.File以及更多。
200 java  file-io  path  nio 

7
Java NIO FileChannel与FileOutputstream的性能/实用性
我试图弄清楚,当我们使用nio FileChannel与常规的FileInputStream/FileOuputStream方式将文件读写到文件系统时,性能(或优势)是否存在任何差异。我观察到,在我的机器上,两者的性能都相同,而且FileChannel速度也慢了很多倍。请问您可以比较这两种方法的更多详细信息。这是我使用的代码,正在测试的文件在左右350MB。如果我不考虑随机访问或其他此类高级功能,是否可以将基于NIO的类用于文件I / O是一个好选择吗? package trialjavaprograms; import java.io.File; import java.io.FileInputStream; import java.io.FileOutputStream; import java.io.InputStream; import java.nio.ByteBuffer; import java.nio.channels.FileChannel; public class JavaNIOTest { public static void main(String[] args) throws Exception { useNormalIO(); useFileChannel(); } private static void useNormalIO() throws Exception { File file = new File("/home/developer/test.iso"); File oFile = new File("/home/developer/test2"); …

4
ByteBuffer.allocate()与ByteBuffer.allocateDirect()
到allocate()或到allocateDirect(),这就是问题。 几年以来,我一直坚持认为,由于DirectByteBuffers是操作系统级别的直接内存映射,因此与get相比,它在执行get / put调用时将执行得更快HeapByteBuffer。到目前为止,我从来没有真正想知道有关该情况的确切细节。我想知道这两种类型中ByteBuffer的哪种更快,以及在什么条件下。


3
Java:NIO和NIO.2之间到底有什么区别?
我不太了解它们之间的区别,因此我对这两个软件包有一些疑问。 在Google上浏览了一下之后,似乎Oracle决定使用JDK7版本NIO的更新和增强NIO.2软件包来更新该软件包。 NIO封装的性能与封装相比如何NIO.2? 从NIO到有NIO.2什么大变化?(例如新方法,功能) 为什么NIO必须对原始软件包进行更新? 如今是NIO.2该NIO软件包的代名词吗? 这并不是我想在代码中使用旧版包,我对此真的很好奇。请告诉我他们的区别?
83 java  io  nio  difference 

3
Java:将字符串与ByteBuffer相互转换以及相关问题
我正在使用Java NIO进行套接字连接,并且我的协议是基于文本的,因此我需要能够将字符串转换为ByteBuffer,然后再将其写入SocketChannel,并将传入的ByteBuffer转换回String。目前,我正在使用以下代码: public static Charset charset = Charset.forName("UTF-8"); public static CharsetEncoder encoder = charset.newEncoder(); public static CharsetDecoder decoder = charset.newDecoder(); public static ByteBuffer str_to_bb(String msg){ try{ return encoder.encode(CharBuffer.wrap(msg)); }catch(Exception e){e.printStackTrace();} return null; } public static String bb_to_str(ByteBuffer buffer){ String data = ""; try{ int old_position = buffer.position(); data = decoder.decode(buffer).toString(); …

1
如何在Java 7 java.nio.file.Path中访问子文件/文件夹?
Java 7引入了java.nio.file.Path作为java.io.File的可能替代。 使用文件,当我访问特定目录下的文件时,我将执行以下操作: File parent = new File("c:\\tmp"); File child = new File(parent, "child"); // this accesses c:\tmp\child 用Path执行此操作的方式是什么? 我以为这会工作: Path parent = Paths.get("c:\\tmp"); Path child = Paths.get(parent.toString(), "child"); 但是打电话parent.toString()似乎很丑。有没有更好的办法?
67 java  path  nio  java-7 
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.