av一区二区在线观看_亚洲男人的天堂网站_日韩亚洲视频_在线成人免费_欧美日韩精品免费观看视频_久草视

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

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

瀏覽:130日期: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在线精品一区二区 | 天堂成人国产精品一区 | 久久久久久高清 | 欧美激情精品久久久久久 | 国产精品自产av一区二区三区 | 久久综合久久综合久久综合 | 亚洲欧美日韩在线 | 婷婷久久久久 | 国产高清久久 | 国产成人精品一区 | 黄色片a级| 亚洲精品丝袜日韩 | 九一视频在线观看 | 91新视频 | 一区二区在线 | 欧美精品一区二区三区视频 | 日韩在线国产精品 | 午夜视频在线免费观看 | 一区二区视频免费观看 | 国产精品福利视频 | 国产精品高潮呻吟久久 | 黄色三级毛片 | 国产欧美一区二区三区国产幕精品 | 免费观看一级毛片 | 成人久草| 日韩电影免费观看中文字幕 | 日韩精品一区二区三区中文在线 | 黄色香蕉视频在线观看 | 国产在线拍偷自揄拍视频 | 久久久国产一区二区三区 | 久久国际精品 | 日韩在线精品视频 | 成人久久一区 | 国产一区二区三区色淫影院 | 国产美女精品 | 久久久精品综合 | www.9191| 精品视频一区二区三区在线观看 | 浴室洗澡偷拍一区二区 | 成人午夜激情 |