Java圖片上傳實現代碼_java

來源:互聯網
上載者:User

本文執行個體為大家分享了Java圖片上傳代碼,供大家參考,具體內容如下

import java.io.*; import java.net.*; /* *發送端 */ class picsend {   public static void main(String[] args) throws Exception   {     if(args.length!=1)     {       System.out.println("請選擇一張.jpg圖片");       return;     }     File file = new File(args[0]);     if (!(file.exists() && file.isFile()))     {       System.out.println("圖片有問題(不是檔案或不存在)");       return;     }     if(!file.getName().endsWith(".jpg"))     {       System.out.println("圖片格式不對,請重新選擇圖片");       return;     }     if(file.length()>1024*1024*10)     {       System.out.println("圖片過大,無法上傳");       return;     }      Socket s = new Socket("192.168.33.1",10006);//建立服務     FileInputStream fis = new FileInputStream("d:\\美女.jpg");//讀取圖片     OutputStream out = s.getOutputStream();//讀到的寫入     byte [] b = new byte[1024];     int len = 0;     while((len = fis.read(b))!= -1)     {       out.write(b,0,len);     }     s.shutdownOutput();//標記結束     InputStream in = s.getInputStream();//讀服務端返回資料     byte [] bin = new byte[1024];     int num = in.read(bin);     System.out.println(new String(bin,0,num));     fis.close();     s.close();   } } class picThread implements Runnable  {   private Socket s;   picThread(Socket s)   {     this.s = s;   }   public void run()   {     int count = 1;     String ip = s.getInetAddress().getHostAddress();//得到ip     try     {       System.out.println(ip+".............connect");       InputStream in = s.getInputStream();//讀到流中資料       File file = new File(ip+"("+(count)+")"+".jpg");       while(file.exists())//判斷檔案是否存在         file = new File(ip+"("+(count++)+")"+".jpg");        FileOutputStream fos = new FileOutputStream(file);//寫入       byte [] b = new byte[1024];       int len = 0;       while((len = in.read(b))!=-1)       {         fos.write(b,0,len);       }       OutputStream out = s.getOutputStream();//寫入服務端傳過來資料       out.write("上傳成功!".getBytes());       fos.close();       s.close();     }     catch (Exception e)     {       throw new RuntimeException("上傳失敗");     }          } } /* *服務端 */ class picrece  {   public static void main(String[] args) throws Exception   {     ServerSocket ss = new ServerSocket(10006);     while(true)     {       Socket s = ss.accept();//接收       new Thread(new picThread(s)).start();     }   } } 

效果:


以上就是本文的全部內容,希望對大家學習java程式設計有所協助。

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.