欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

Java图片上传实现代码

程序员文章站 2024-03-11 18:21:43
本文实例为大家分享了java图片上传代码,供大家参考,具体内容如下 import java.io.*; import java.net.*; /* *...

本文实例为大家分享了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图片上传实现代码

Java图片上传实现代码

以上就是本文的全部内容,希望对大家学习java程序设计有所帮助。