java - 使用 BufferedOutputStream 通过 while 循环将字节写入文件。需要帮助

标签 java bufferedoutputstream

我正在尝试使用 BufferedOutputStream 将字节写入文件,但我需要它在 while 循环中工作。这意味着与 TFTP 服务器一起工作。它写入的文件中完全没有任何内容(这是毫无意义的)。谁能帮我解决这个问题吗?

            WRQ WRQ = new WRQ();
            ACK ACK = new ACK();
            DatagramPacket outPacket;
            BufferedOutputStream bufferedOutput = new BufferedOutputStream(new FileOutputStream(filename));
            byte[] bytes;
            byte[] fileOut;
            outPacket = WRQ.firstPacket(packet);
            socket.send(outPacket);

            socket.receive(packet);

            while (packet.getLength() == 516){

            bytes = WRQ.doWRQ(packet);
            bufferedOutput.write(bytes);

            outPacket = ACK.doACK(packet);
            socket.send(outPacket);

            socket.receive(packet); 

            }

            bytes = WRQ.doWRQ(packet);
            bufferedOutput.write(bytes);

            outPacket = ACK.doACK(packet);
            socket.send(outPacket);

最佳答案

完成后您不会关闭流。

关于java - 使用 BufferedOutputStream 通过 while 循环将字节写入文件。需要帮助,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10674665/

相关文章:

java - BufferedOutputStream 多行写入文件

java - 为什么集合框架中没有堆栈接口(interface)?

Java BufferedOutputStream : How many bytes to write

java - 我们可以动态创建 testng.xml 文件吗?

java - 抛出任何异常是否会导致GAE实例重新启动

java - 如何加速 FileOutputStream 和 FileOutputStream close()?

java - java直接发送音频到扬声器

java - 学者制度设计

java - 将网页另存为图像