非阻塞I/O下載(可以跨服務器的下載)

? ? ? ? 前些日子在公司做了一些上傳下載的功能衷咽,這個非常好使就分享一下。然而一個觀眾都沒有飘诗,那就當成自己的日記吧:

/**

* 非阻塞I/O下載

*

* @return boolean 是否成功

* @throws ParseException

*/

public boolean nioDownload(String preparePath, String realFileName, String saveName)

throws ParseException {

// httpUrl這個是下載地址

String httpUrl = preparePath;

String ext = realFileName.substring(realFileName.lastIndexOf("."), realFileName.length());

String workDirectory = getSystemRealDirectory() + getSystemWorkDirectory() + Global.getConfig("htword.accDir")

+ "/" + saveName + ext;

System.out.println("目標文件夾:" + workDirectory);

boolean flag = false;

// 下載網(wǎng)絡文件

// Long startTime = System.nanoTime();

ReadableByteChannel rbc = null;

FileOutputStream fos = null;

try {

URL website = new URL(httpUrl);

System.out.println("下載地址:" + httpUrl);

rbc = Channels.newChannel(website.openStream());

fos = new FileOutputStream(workDirectory);//這個是最終下載到的位置

fos.getChannel().transferFrom(rbc, 0, Long.MAX_VALUE);

flag = true;

} catch (IOException e) {

flag = false;

e.printStackTrace();

} finally {

try {

if (fos != null) {

fos.close();

}

} catch (IOException e) {

e.printStackTrace();

}

try {

if (rbc != null) {

rbc.close();

}

} catch (IOException e) {

e.printStackTrace();

}

}

// Long elapsedTime = System.nanoTime() - startTime;

// if((elapsedTime / 1000000000.0)>3)

return flag;

}

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯(lián)系作者
  • 序言:七十年代末教藻,一起剝皮案震驚了整個濱河市墓捻,隨后出現(xiàn)的幾起案子致板,更是在濱河造成了極大的恐慌交煞,老刑警劉巖,帶你破解...
    沈念sama閱讀 218,607評論 6 507
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件斟或,死亡現(xiàn)場離奇詭異素征,居然都是意外死亡,警方通過查閱死者的電腦和手機萝挤,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,239評論 3 395
  • 文/潘曉璐 我一進店門御毅,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人怜珍,你說我怎么就攤上這事端蛆。” “怎么了绘面?”我有些...
    開封第一講書人閱讀 164,960評論 0 355
  • 文/不壞的土叔 我叫張陵欺税,是天一觀的道長侈沪。 經常有香客問我揭璃,道長,這世上最難降的妖魔是什么亭罪? 我笑而不...
    開封第一講書人閱讀 58,750評論 1 294
  • 正文 為了忘掉前任瘦馍,我火速辦了婚禮,結果婚禮上应役,老公的妹妹穿的比我還像新娘情组。我一直安慰自己,他們只是感情好箩祥,可當我...
    茶點故事閱讀 67,764評論 6 392
  • 文/花漫 我一把揭開白布院崇。 她就那樣靜靜地躺著,像睡著了一般袍祖。 火紅的嫁衣襯著肌膚如雪底瓣。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 51,604評論 1 305
  • 那天蕉陋,我揣著相機與錄音捐凭,去河邊找鬼拨扶。 笑死,一個胖子當著我的面吹牛茁肠,可吹牛的內容都是我干的患民。 我是一名探鬼主播,決...
    沈念sama閱讀 40,347評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼垦梆,長吁一口氣:“原來是場噩夢啊……” “哼匹颤!你這毒婦竟也來了?” 一聲冷哼從身側響起托猩,我...
    開封第一講書人閱讀 39,253評論 0 276
  • 序言:老撾萬榮一對情侶失蹤惋嚎,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后站刑,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體另伍,經...
    沈念sama閱讀 45,702評論 1 315
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內容為張勛視角 年9月15日...
    茶點故事閱讀 37,893評論 3 336
  • 正文 我和宋清朗相戀三年绞旅,在試婚紗的時候發(fā)現(xiàn)自己被綠了摆尝。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 40,015評論 1 348
  • 序言:一個原本活蹦亂跳的男人離奇死亡因悲,死狀恐怖堕汞,靈堂內的尸體忽然破棺而出,到底是詐尸還是另有隱情晃琳,我是刑警寧澤讯检,帶...
    沈念sama閱讀 35,734評論 5 346
  • 正文 年R本政府宣布,位于F島的核電站卫旱,受9級特大地震影響人灼,放射性物質發(fā)生泄漏。R本人自食惡果不足惜顾翼,卻給世界環(huán)境...
    茶點故事閱讀 41,352評論 3 330
  • 文/蒙蒙 一投放、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧适贸,春花似錦灸芳、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,934評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至蕊肥,卻和暖如春谒获,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 33,052評論 1 270
  • 我被黑心中介騙來泰國打工究反, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留寻定,地道東北人。 一個月前我還...
    沈念sama閱讀 48,216評論 3 371
  • 正文 我出身青樓精耐,卻偏偏與公主長得像狼速,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子卦停,可洞房花燭夜當晚...
    茶點故事閱讀 44,969評論 2 355

推薦閱讀更多精彩內容

  • 1. Java基礎部分 基礎部分的順序:基本語法向胡,類相關的語法,內部類的語法惊完,繼承相關的語法僵芹,異常的語法,線程的語...
    子非魚_t_閱讀 31,639評論 18 399
  • ¥開啟¥ 【iAPP實現(xiàn)進入界面執(zhí)行逐一顯】 〖2017-08-25 15:22:14〗 《//首先開一個線程小槐,因...
    小菜c閱讀 6,424評論 0 17
  • 一. Java基礎部分.................................................
    wy_sure閱讀 3,811評論 0 11
  • 一拇派、流的概念和作用。 流是一種有順序的凿跳,有起點和終點的字節(jié)集合件豌,是對數(shù)據(jù)傳輸?shù)目偝苫虺橄蟆<磾?shù)據(jù)在兩設備之間的傳輸...
    布魯斯不吐絲閱讀 10,045評論 2 95
  • 1 參考 2 軸線中文亂碼和正負號錯誤 3 基礎畫圖 4 設置軸線名稱 5 設置多條曲線
    gogoforit閱讀 645評論 0 0