午夜剧场伦理_日本一道高清_国产又黄又硬_91黄色网战_女同久久另类69精品国产_妹妹的朋友在线

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

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

瀏覽:196日期: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
相關文章:
主站蜘蛛池模板: 黄色在线观看国产 | 欧美日韩视频在线 | 91精品国产综合久久久蜜臀九色 | 亚洲高清免费 | 欧美色国 | 欧美成人精品一区二区 | 亚洲a视频在线观看 | 影音先锋中文在线 | 免费精品一区二区 | 自拍欧美日韩 | 久久午夜国产精品 | 无套暴操 | 欧美日韩在线国产 | 爆操少妇 | 欧美日韩精品一区二区三区四区 | 亚洲天堂网在线视频 | 欧美黄色大片在线观看 | 日韩啊啊啊 | 国产精品女人久久久 | 97人人草 | 免费成人小视频 | 国产精品免费网站 | 亚洲黄色三级视频 | 日本黄页网站免费大全 | 伊人久久视频 | 性瑜伽xxxtⅴ | 一二区精品 | 欧美在线二区 | 四虎影院在线播放 | 91麻豆国产精品 | 一区二区三区免费在线观看视频 | 超碰97在线看| 四虎影视永久 | 亚洲精品一区在线观看 | 丁香网五月天 | 欧日韩不卡在线视频 | chinesemature高潮| 色啪网 | 成人在线播放网站 | 欧美日韩中 | 亚洲人成小说 |