java文件下載的問題,還沒解決,

chyx413332087 13年前發布 | 2K 次閱讀 云計算 qtmib
     java文件下載,我這里用得的是一個Apache FtpClient jar包,遇到的問題,如下:
    1:上傳圖片,到服務器上面,打開花面,原來是沒用二進制進行傳輸
    修改為  ftpClient.setFileType(FTP.BINARY_FILE_TYPE);  這樣上傳就能解決圖片花面
   為什么選擇用Ftp上傳呢, 平常我們web頁面 都是Apache fileupload 類,但是apache fileupLoad 只能在web應用    傳輸,用ftp,可以傳輸在不同的主機地址,只要主機上,搭建 了Ftp服務器,
    if(isMult==true)  //說明是
  {
   DiskFileItemFactory  factory = new DiskFileItemFactory();
   ServletFileUpload upload = new ServletFileUpload(factory);     
   List<FileItem> items = upload.parseRequest(request);    
   Iterator<FileItem> itr = items.iterator();   
   while (itr.hasNext()) {        
    FileItem item = (FileItem) itr.next(); 
 
      FTPClient  ftpClient=new FTPClient();
      ftpClient.connect("127.0.0.1", 2121);
     ftpClient.login("admin", "admin");
     out.print(ftpClient.getRemotePort());
     ftpClient.setFileType(FTP.BINARY_FILE_TYPE);
     ftpClient.setControlEncoding("GBK");
     ftpClient.addProtocolCommandListener(new PrintCommandListener(
                              new PrintWriter(System.out)));
     //out.println(ftpClient.getReplyCode());
     //設置上傳工作目錄   不設置,默認 res\home
     //ftpClient.changeWorkingDirectory("/");     
    // FileInputStream  fileInputStream=new FileInputStream(fullFile);
     String newFileName="test_"+new Random().nextInt(10000)+".jpeg";
       ftpClient.storeFile(newFileName,item.getInputStream());
     
   2:圖片下載
下載的問題還沒解決
現象:圖片下載到本機,打開的圖片是空白,不知道是什么原因
response.setContentType("application/x-msdownload");
//設置彈出對話框 為下載對話框
response.setHeader("Content-Disposition", "attachment;filename=\"" + file_name + "\"" );
// 通過輸入輸出流 下載 文件
java.io.InputStream  input =new FileInputStream(ff);
    byte r[]=new byte[1024];
  OutputStream outputStream=response.getOutputStream();
         int c;
  while((c=input.read(r))!=-1)
  {
   outputStream.write(r, 0, c);
  }
  outputStream.flush();
  
   input.close();
   outputStream.close();
      下載下來,就是空白,但是文件大小一樣大,
但是去掉 response.setHeader()那個 彈出對話框 為下載對話框,  圖片文件,就沒問題,奇怪啊,先記在這里
     
 
 
 
 
 本文由用戶 chyx413332087 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。
 轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。
 本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!