編輯:關於Android編程
本文繼續講解andriod網絡方面問題。本文主要在Eclipse上搭建服務器端。
同上篇,本文tomcat版本7.0,servlet 3.0不需要在web.xml下注冊xml文件。
本文實現的內容較簡單,在服務器在磁盤上讀取一個pdf(其他文件也行),返回一個流文件給客戶端。
服務器端的代碼如下:
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { //String pathString=F:\作業\基於ARM11的嵌入式系統開發方法.docx; //要下載的文件路徑,本文為絕對路徑 String pathString=D:\我的文檔\桌面\新建文件夾 (3)\新概念3\舊版新概念英語第三冊課文.pdf; InputStream inputStream=null; OutputStream outputStream=null; File file=new File(pathString); inputStream=new BufferedInputStream(new FileInputStream(file)); //設置為流下載 response.setContentType(application/octet-sream); //設置響應大小 response.setContentLength((int) file.length()); response.setHeader(Content-type, text/html;charset=UTF-8); //這句話的意思,是告訴servlet用UTF-8轉碼,而不是用默認的ISO8859 response.setCharacterEncoding(UTF-8); String fileName=file.getName(); //浏覽器下載 response.addHeader(Content-Disposition, attachment;filename=+ new String( fileName.getBytes(gb2312), ISO8859-1 )); outputStream=new BufferedOutputStream(response.getOutputStream()); // 緩沖區大小1024 byte[] s=new byte[10240]; int len=0; //避免最後一次讀取數據時,不滿10240b的數據被填充,造成數據不准確性 while((len=inputStream.read(s))!=-1) { outputStream.write(s, 0, len); } if (inputStream!=null) { inputStream.close(); } response.flushBuffer(); if (outputStream!=null) { outputStream.close(); } }
前言:近年來,智能電視的發展如火如荼,Googel 也在大力推進TV及穿帶設備的發展,在互聯網的風口,是豬也會飛,這句話並不是沒有道理的。傳統電視機廠商,基本都轉型致力於
本文實例講述了Android編程實現調用系統分享功能。分享給大家供大家參考,具體如下:/** * 調用系統的分享功能 * Created by admin on 15-4
播放聲音可以用MediaPlayer和AudioTrack,兩者都提供了java API供應用開發者使用。雖然都可以播放聲音,但兩者還是有很大的區別的。其中最大的區別是M
在運行時添加碎片 點擊獲取源碼 將UI分割為多個可配置的部分是碎片的優勢之一,但其真正強大之處在於可在運行時動態地把它們添加到活動中。 1、使用上一篇創建的F