nio

    -2热度

    1回答

    我正在尝试编写一个非阻塞客户端/服务器,我注意到Socket提供了getInputStream()和getOutputStream(),但SocketChannel提供了read()和write()。 下面的问题都是相关的,是为了更好地了解情况: 为什么这些对象如何提供分组数据有什么不同? 这是否是阻塞vs非阻塞的副作用还是简单的 的实施? 这是我在决定如何从套接字读取时需要考虑的事情吗? 我可以

    2热度

    3回答

    我想打开一个文件来阅读或创建文件,如果它不存在。 我用这个代码: String location = "/test1/test2/test3/"; new File(location).mkdirs(); location += "fileName.properties"; Path confDir = Paths.get(location); InputStream in = Files

    0热度

    1回答

    我有位代码,是应该在系统上的临时文件的位置创建一个临时目录: try { Path tempdir = Files.createTempDirectory("tempmm"); tempdir.toFile().deleteOnExit(); tempFilename = format("%s/%s.zip", tempdir, meetId);

    1热度

    1回答

    如果我有两个连接到一个服务器,需要在一个通道上多次读取才能完成数据包,我将如何知道哪个数据包与哪个数据包一起进行? 对于被接收为四个交错缓冲器例如两个数据包: PacketA缓冲器part1的 PacketB缓冲器part1的 PacketA缓冲器2部分 PacketB缓冲器2部分 的第一部分可能有一个标题,但第二部分可以在分组的任何地方分开到达。 当收到部分数据包时,如何知道哪个缓冲区在哪里?

    -1热度

    2回答

    我有一个服务器有很多IP地址,UDP套接字绑定到0.0.0.0,所以我可以从任何一个接收UDP。如何指定要发送的UDP数据包中使用的源IP地址?我目前的实现是使用NIO,所以也许使用DatagramChannel来执行发送是个问题。

    1热度

    1回答

    我一直在使用开发出检测文件系统更改应用程序的Java的java.nio.file.WatchService 默认文件系统建立一个WatchService当这个伟大的工程: watchService = FileSystems.getDefault().newWatchService(); 我现在使用的用例是扩展这个应用程序来监视远程ftp服务器上的事件。具体而言,当检测到新文件(ENTRY_CRE

    0热度

    1回答

    是我的工作,而现在各种平台上的一个代码开始突然出现故障,有代码更改但未在有关这个地方的区域。 的抛出异常的代码行是: (SocketChannel) selectionKey.channel()).finishConnect() 而且它抛出: java.net.SocketException异常:权限被拒绝:没有进一步的信息 什么可能是问题? 可能显示更多的信息有些日志行,它是一个测试代码:

    0热度

    1回答

    我正在使用Amazon SQS队列,我想要有两个队列,比如说一个具有高优先级任务的队列,以及其他具有低优先级任务的队列。 我想创建一个安装程序,我的应用程序在开始使用低优先级任务之前总是先消耗所有高优先级的任务(在我的情况下,饥饿是没有问题的)。 我的第一个想法是有两个cosumers,每个队列一个,从每个队列中获取消息并将它们放入一个java.util.PriorityQueue中,但我想避免插

    0热度

    1回答

    我需要创建一个实用程序,收集一组日志压缩他们,并将他们附加到杰拉。 我打算使用httpclient 4.5。 (有NIO支持)jira API在这里不是问题。 我想通过zip流直接从文件系统流文件并上传到jira,而无需在文件系统上创建临时zip文件。 我发现java API在这种情况下令人困惑,无法弄清楚使用情况。 注意,它看起来像这样的情况是一个很好的候选人Java的NIO使用(也许是一个渠道

    0热度

    2回答

    如何从大文件中有效读取数据并使用Java NIO框架将批量数据写入文件中。 我与ByteBuffer和FileChannel工作,并曾尝试类似如下: public static void main(String[] args) { String inFileStr = "screen.png"; String outFileStr = "screen-out.png";