我有一个 Java 后端,用户可以在其中上传文件。我想将这些上传的文件限制为最大大小,并希望在上传发生时检查上传的字节数,并在达到限制后立即中断传输。
目前我在分配前使用 InputStream.available() 来确定估计的大小,但这似乎被认为是不可靠的。
有什么建议吗?
最佳答案
您可以使用 Guava's CountingInputstream或 Apache IO's CountingInputStream当您想知道已读取了多少字节时。
另一方面,如果您想在达到某个限制时立即停止上传,那么只需在读取字节 block 时进行计数,并在超过限制时关闭流。
关于Java:如何在不分配完整内存的情况下计算从 InputStream 读取的字节数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37678276/