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

您的位置:首頁技術(shù)文章
文章詳情頁

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

瀏覽:205日期: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('已讀字節(jié):' + i + ', 剩余字節(jié): ' + 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();

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

問題解答

回答1:

應(yīng)該是你最后對(duì)buffer的處理導(dǎo)致剛剛好讀取完文件吧

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

一般情況下不需要重設(shè)buffer的大小

標(biāo)簽: java
相關(guān)文章:
主站蜘蛛池模板: 哪里看毛片 | 视频一区在线观看 | 色婷婷亚洲 | 成人黄色在线 | 久久视频99| 开心激情久久 | 国产一区不卡 | 国产精久久久 | 久久久丁香 | www.av视频 | 日韩在线一二三区 | 欧美人妖老妇 | 国产色综合天天综合网 | 久久九九色| 亚洲黄色网址 | 99re在线精品视频 | 黄色欧美网站 | 精品一二 | 怡春院欧美 | 国产精品资源站 | 色优久久| 国产精品久久久久久久久久久久久久久久 | 亚洲视频综合 | 国产色视频在线 | 婷婷激情五月综合 | 欧美在线视频一区二区 | 精品国产乱码一区二区三 | 天堂网av在线 | 91蝌蚪在线 | 午夜精品区| 樱花草www在线观看 糖心vlog免费在线观看 | 人人干97 | 欧美日韩麻豆 | 亚洲精品一区二区三区蜜桃 | 亚洲午夜免费 | 国产一二在线 | 国产91小视频 | 在线观看中文字幕视频 | 九九激情网 | 国产精品欧美亚洲 | 日韩欧美三级在线 |