Android客户端代码

    public static String uploadImage(File file, String RequestURL) {        String result = "error";        String BOUNDARY = UUID.randomUUID().toString();//边界标识 随机生成        String PREFIX = "--", LINE_END = "\r\n";        String CONTENT_TYPE = "multipart/form-data";//内容类型        try {            URL url = new URL(RequestURL);            HttpURLConnection conn = (HttpURLConnection) url.openConnection();            conn.setReadTimeout(50000);            conn.setConnectTimeout(50000);            conn.setDoInput(true);//允许输入流            conn.setDoOutput(true);//允许输出流            conn.setUseCaches(false);//不允许使用缓存            conn.setRequestMethod("POST");//请求方式            conn.setRequestProperty("Charset", "UTF-8");//设置编码            conn.setRequestProperty("connection", "keep-alive");            conn.setRequestProperty("Content-Type", CONTENT_TYPE + ";boundary=" + BOUNDARY);            conn.connect();            if (file != null) {                //当文件不为空,把文件包装并且上传                DataOutputStream dos = new DataOutputStream(conn.getOutputStream());                dos.writeBytes(PREFIX + BOUNDARY + LINE_END);                dos.writeBytes("Content-Disposition: form-data; " + "name=\"inputName\";filename=\"" + file.getName() + "\"" + LINE_END);                dos.writeBytes(LINE_END);                FileInputStream is = new FileInputStream(file);                byte[] bytes = new byte[1024];                int len = -1;                while ((len = is.read(bytes)) != -1) {                    dos.write(bytes, 0, len);                }                is.close();                dos.write(LINE_END.getBytes());                byte[] end_data = (PREFIX + BOUNDARY + PREFIX + LINE_END).getBytes();                dos.write(end_data);                dos.flush();                /*                 * 获取响应码  200=成功                 * 当响应成功,获取响应的流                   */                int res = conn.getResponseCode();                if (res == 200) {                    InputStream input = conn.getInputStream();                    StringBuilder sbs = new StringBuilder();                    int ss;                    while ((ss = input.read()) != -1) {                        sbs.append((char) ss);                    }                    result = sbs.toString();                    String filepathnow=file.getPath();                    String newfilename=filepathnow.substring(0,filepathnow.lastIndexOf("."))+"-已上传.log";                    file.renameTo(new File(newfilename) );                }            }        } catch (IOException e) {            e.printStackTrace();        }        return result;    }

C#服务端代码

public static string Upload_File(){    try    {        HttpFileCollection file_list = HttpContext.Current.Request.Files;        if (file_list != null && file_list.Count > 0)        {            string str = string.Empty;            for (int i = 0; i < file_list.Count; i++)            {                HttpPostedFile file = file_list[i];                string type = file.ContentType;//获取文件类型                string FileName = file.FileName;                string guid = "";                if (FileName != null && FileName != "")                {                    string FileType = FileName.Substring(FileName.LastIndexOf(".") + 1);//得到文件的后缀名                    guid = DateTime.Now.ToString("yyyyMMddhhmmss") + FileName;//得到重命名的文件名                                                                                //定义文件存放的目标路径                    string targetDir = HttpContext.Current.Server.MapPath("~/UpLoad/" + DateTime.Now.ToString("yyyy-MM-dd") + "/file");                    //创建目标路径                    Directory.CreateDirectory(targetDir);                    string path = Path.Combine(targetDir, Path.GetFileName(guid));                    file.SaveAs(path);                    str = str + "/UpLoad/" + DateTime.Now.ToString("yyyy-MM-dd") + "/file/" + guid;                }            }            return "上传成功," + str;        }        else            return "文件不存在";    }    catch (Exception ex)    {        return "上传失败," + ex.Message;    }}

 

更多相关文章

  1. Android拍照上传至PHP服务器并写入MySql数据库(下)
  2. Android WebView获取上一个链接的路径
  3. android照相及照片上传
  4. Android 实现文件(图片)上传
  5. android 读取raw文件下文件内容
  6. android客户端利用sokcet通信和向Java服务端发请求,Java服务端把

随机推荐

  1. android logo、android开机动画改变详解
  2. gif in android
  3. android中的handler的作用
  4. 键盘弹出以后Activity的布局方式
  5. Android恶意代码分析与渗透测试
  6. Android中的网络时间同步
  7. Android菜鸟必看:解析应用的基本原理
  8. Android(安卓)中各种JAVA 包的功能描述
  9. 我的Android学习计划--走在架构师的路上
  10. Android(安卓)Animation学习笔记