国产成人精品久久免费动漫-国产成人精品天堂-国产成人精品区在线观看-国产成人精品日本-a级毛片无码免费真人-a级毛片毛片免费观看久潮喷

您的位置:首頁技術文章
文章詳情頁

java - inputstream流讀到最后為什么沒有返回 -1 ?

瀏覽:124日期:2024-01-10 15:18:05

問題描述

InputStream fileSource = req.getInputStream();String tempFile = '/home/joy/桌面/tempFile';FileOutputStream tempFileOutputStream = new FileOutputStream(tempFile);byte[] bytes = new byte[10 * 1024];int i = 0;while ((i = fileSource.read(bytes, 0, bytes.length)) != -1) { System.out.println('已讀字節:' + i + ', 剩余字節: ' + fileSource.available()); System.out.println(new String(bytes)); tempFileOutputStream.write(bytes); tempFileOutputStream.flush(); if (fileSource.available() < bytes.length) {bytes = new byte[fileSource.available()]; }}tempFileOutputStream.close();fileSource.close();

為什么該流讀完的時候并沒有返回-1,而是返回0,導致無限循環.(上傳文檔類型文件不會,字節文件就會發生這種情況)java - inputstream流讀到最后為什么沒有返回 -1 ?

問題解答

回答1:

應該是你最后對buffer的處理導致剛剛好讀取完文件吧

if (fileSource.available() < bytes.length) { bytes = new byte[fileSource.available()];}

一般情況下不需要重設buffer的大小

標簽: java
相關文章:
主站蜘蛛池模板: 国产日韩亚洲不卡高清在线观看 | 国产精品吹潮在线播放 | 国产99精品免费视频看6 | 亚洲欧美综合国产不卡 | 色综合久久88一加勒比 | 欧美一区二区三区久久综合 | 亚洲人在线| 久久99欧美 | 姐姐真漂亮在线视频中文版 | 日本欧美不卡一区二区三区在线 | 中文字幕在线观看一区 | 欧美一区精品二区三区 | 99视频在线观看视频 | 日本高清视频一区二区 | 欧美一级毛片兔费播放 | 韩国欧洲一级毛片免费 | 日本人一级毛片免费视频 | 国产一级二级三级视频 | 真实国产乱人伦在线视频播放 | 在线看片日本 | 欧美国产高清欧美 | 国产一级毛片午夜 | a级做爰视频免费观看 | 久久不射网 | 草久在线观看视频 | 欧美黑人巨大xxxxxxxx | 99久久免费午夜国产精品 | 日韩精品毛片 | 精品午夜寂寞影院在线观看 | 久久五月女厕所一区二区 | 欧美成人国产一区二区 | 中文三 级 黄 色 片 | 中文字幕亚洲日本岛国片 | 波多野结衣一区二区三区高清在线 | 萌白酱香蕉白丝护士服喷浆 | 成人欧美视频在线观看播放 | 国产超薄肉色丝袜足j | 加勒比一区二区 | 欧美一线不卡在线播放 | 2020久久国产最新免费观看 | 欧美一级aⅴ毛片 |