问题标签 [bufferedoutputstream]

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.

0 投票
1 回答
46 浏览

java - java文件接收停止

我在java中使用套接字进行文件传输。这是客户端代码

这是服务器代码

当我检查服务器的计数时,它是635. 这意味着服务器已发送数据635时间。但是,客户端的打印计数仅为512. (从 0 到 511)我认为它停在read(),因为

不打印。谁能告诉我原因和解决方法?

0 投票
2 回答
308 浏览

java - 客户端无法识别文件流的结尾

我正在用java制作文件传输线程

这是服务器的代码

客户的代码

服务器打印

这意味着服务器发送文件的每个字节。

但是,客户端不打印

我检查了循环运行的次数(检查了服务器和客户端)

两个 while 循环都运行 685 次

我认为客户端的 while 循环无法识别文件传输结束。

有谁知道问题?

0 投票
2 回答
44 浏览

java - For-loop 不执行文件写入命令

我有一个程序应该生成一个具有随机整数名称的文件,并将 200 个字符的数据附加到每个文件。我已经成功地创建了一个文件:

我已经让它将chars 写入文件:

但是当我将两者与 for 循环结合使用时,它不起作用:

我将得到输出“Total: (number) characters written to (whatever).txt!” 但它实际上不会写字符。但是,如果我使循环无限(通过更改qu++qu--),它将写入字符,当然只有一个文件。我什至尝试将其更改为while循环,但它不起作用。有任何想法吗?

0 投票
4 回答
7033 浏览

java - 如何通过bufferedInputStream和bufferedOutputStream在JAVA中复制文件?

我想使用bufferedInputStream并将bufferedOutputStream大型二进制文件从源文件复制到目标文件。

这是我的代码:

我可以成功复制,但后来我使用

在命令行中比较两个文件。错误信息

cmp:文件的EOF

出现。我可以知道我错在哪里吗?

0 投票
1 回答
125 浏览

java - 缓冲写入数据库以避免 OutOfMemoryError

假设您有以下代码:

稍后,该列表用于通过以下调用将对象写入数据库(确切地说是 PostgreSQL):

现在,上面的代码可能看起来简单易懂,但是,当Foo列表中的对象过多时,就会出现问题,从而导致OutOfMemoryError.

所以,我想知道是否有某种模式或约定关于如何对数据库进行“缓冲”写入,以避免将大量对象保留在最终将存储在数据库中的内存中?

我正在考虑沿着这些思路走,受 启发BufferedOutputStream,保持对象的缓冲区(可配置长度),一旦缓冲区填满,就写入并刷新到数据库。

由于我的双手非常关注这一点(我只允许进行小错误修复,而不是更改架构),这是一个足够好的方法和/或有更好的方法吗?

谢谢 :D

0 投票
2 回答
61 浏览

java - BufferedOutputStream 连接两个连续的 flush() 调用

我想使用 BufferedOutputStream 发送单独的消息。所以我愿意bos.write(msg1); bos.flush(); bos.write(msg2); bos.flush()。另一方面,我有一个 BufferedReader 依赖于这些消息的分离:

但我得到的是这样的:“向客户端发送 30 个字节;向客户端发送 30 个字节”,在另一端:“收到 60 个字节”。

0 投票
1 回答
361 浏览

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

在我的 java 应用程序中,我创建线程,其中使用包裹在 BufferedInputStream 和 BufferedOutputStream 中的 FileOutputStream 和 FileInputStream 复制大文件。复制文件后,我尝试为缓冲的输入/输出流调用 close() ,但这在 Ubuntu 上需要几分钟。当它在 OS X 上运行时,流会立即关闭。有没有办法加快这个过程?

0 投票
2 回答
2093 浏览

java - 如何使用缓冲流附加到 Java 中的文件?

我有以下代码,但我不确定我是否在效率/刷新/关闭流方面做得正确。一些建议会很有帮助,谢谢

0 投票
0 回答
664 浏览

tomcat - ClientAbortException 在移动设备上使用 BufferedOutputStream 在 servlet 中加载文件

我有一个使用 BufferedOutputStream 加载音频文件的 servlet,如下所示:

此文件用于音频 html5 标记(如果浏览器不支持,则用于 swf 播放器)。它在某些浏览器上运行良好(在 Windows 上:IE6-10、Firefox、Chrome、Safari。在智能手机上:Chrome、Firefox(测试版)、默认的 android 浏览器)。但在 2 个浏览器(iPad/iPhone 上的 Safari 和 HTC 浏览器)中,我有一个例外。当我通过我的 servlet 加载文件时,大约 15 秒后,我收到一个异常:

在 safari 上,我只能读取一次文件,然后我必须重新加载音频 html5 标签。在 HTC 浏览器上,我无法随时阅读。

多谢。

0 投票
1 回答
621 浏览

java - Java ZipOutputStream 写入一些文件但不写入其他文件

我正在使用 Java 的 ZipOutputStream 类来编写一个大的 zip 文件。

当 zip 文件只有 1000 个子文件和子文件夹时,它可以正常工作。当 zip 文件只有 10000 个子文件和子文件夹时,它也可以正常工作。

但是,由于某种原因,当我将其增加到超过 100000 个子文件和子文件夹时,就会出现问题。

它仍然会写入大量子文件,但随后会退出。我最终得到一个 zip 文件,其中包含我期望的大约一半的目录树。

zip 文件没有达到 4GB 的最大大小。完成后,zip 文件整体只有大约 30MB 大。zip 文件中的每个子文件的大小都小于 1KB。

zip 文件的布局很简单:

根文件夹应包含十个子目录。

这些子目录中的每一个都应包含十个子目录。

这一直持续到第四层,每个子目录包含十个文件。

但是执行后,第一级只保存了5个目录,而第一级的最后一个目录只保存了两个子目录。

以下是相关代码:

我想知道 ZipOutputStream 在退出之前是否有最大数量的文件可以写入。或者也许 FileOutputStream 可以。我不确定。

感谢您的帮助。谢谢你。