public void sendFileToServer (String url, File logFiles) {
        HttpURLConnection connection = null;
        OutputStream os = null;
        DataInputStream is = null;
        try {
//            StringBuilder fullUrl = new StringBuilder(url);
            connection = (HttpURLConnection) new URL(url).openConnection();
            connection.setRequestMethod("POST");
            connection.setRequestProperty("Content-Type", "application/octet-stream");
            connection.setDoOutput(true);
            connection.setDoInput(true);
            connection.setRequestProperty("Connection", "Keep-Alive");
            connection.addRequestProperty("uid", "1935");
            connection.addRequestProperty("strlen","11791");
            connection.addRequestProperty("bid","16");
            connection.addRequestProperty("count", "1");
            connection.addRequestProperty("num", "1");
            connection.addRequestProperty("type", "3");
//            if (customizedHeader != null)  
//                for (String key : customizedHeader.keySet()) {  
//                    connection.addRequestProperty(key, customizedHeader.get(key));  
//                }
            connection.connect();
            FileInputStream iso = new FileInputStream (logFiles);
            os = new BufferedOutputStream(connection.getOutputStream());
            
            byte[] buffer = new byte[4096];
            int bytes_read;
            while ((bytes_read = iso.read(buffer)) != -1) {
                os.write(buffer, 0, bytes_read);
            }
            os.close();
            iso.close();
            
            System.out.println("Done... ");
            
            if (connection.getResponseCode() == HttpURLConnection.HTTP_OK) {
                System.out.println("Upload file success" + connection.getResponseCode());
                System.out.println(connection.getContent());
                System.out.println(connection.getResponseMessage());
            }
        } catch (MalformedURLException e) {
            e.printStackTrace();
        } catch (IOException e) {
            e.printStackTrace();
        } catch (Exception e1) {
            e1.printStackTrace();
        }finally {
            try {
                if(os != null) {
                    os.close();
                }
            } catch (IOException e) {
                System.out.println(e.toString());
            }
            try {
                if(is != null) {
                    is.close();
                }
            } catch (IOException e) {
                System.out.println(e.toString());
            }
            if(connection != null) {
                connection.disconnect();
            }
           }
    }

java httpclient post 文件到server的更多相关文章

  1. eclipse新建web项目,发布 run as 方式和 new server然后添加项目方式。 后者无法自动编译java 成class文件到classes包下。

    eclipse新建web项目,发布 run as 方式和 new server然后添加项目方式. 后者无法自动编译java 成class文件到classes包下. 建议使用run as  -  run ...

  2. HttpClient构造文件上传

    在项目中我们有时候需要使用到其他第三方的api,而有些api要求我们上传文件,search一下,下面将结果记录一下喽! 含义 ENCTYPE="multipart/form-data&quo ...

  3. Android端通过HttpURLConnection上传文件到server

    Android端通过HttpURLConnection上传文件到server 一:实现原理 近期在做Androidclient的应用开发,涉及到要把图片上传到后台server中.自己选择了做Sprin ...

  4. Java FtpClient 实现文件上传服务

    一.Ubuntu 安装 Vsftpd 服务 1.安装 sudo apt-get install vsftpd 2.添加用户(uftp) sudo useradd -d /home/uftp -s /b ...

  5. Java实现FTP文件与文件夹的上传和下载

    Java实现FTP文件与文件夹的上传和下载 FTP 是File Transfer Protocol(文件传输协议)的英文简称,而中文简称为"文传协议".用于Internet上的控制 ...

  6. 【原创】用JAVA实现大文件上传及显示进度信息

    用JAVA实现大文件上传及显示进度信息 ---解析HTTP MultiPart协议 (本文提供全部源码下载,请访问 https://github.com/grayprince/UploadBigFil ...

  7. JAVA操作properties文件

    va中的properties文件是一种配置文件,主要用于表达配置信息,文件类型为*.properties,格式为文本文件,文件的内容是格式是"键=值"的格式,在properties ...

  8. java读取CSV文件添加到sqlserver数据库

    在直接将CSV文件导入sqlserver数据库时出现了错误,原因还未找到,初步怀疑是数据中含有特殊字符.于是只能用代码导数据了. java读取CSV文件的代码如下: package experimen ...

  9. java上传文件获取跟目录的办法

    在java中获得文件的路径在我们做上传文件操作时是不可避免的.web 上运行1:this.getClass().getClassLoader().getResource("/"). ...

随机推荐

  1. JAVA学习-JAVA环境准备

    dir:列出当前目录下的文件以及文件夹md:  创建目录rd:  删除目录cd: 进入指定的目录,打开文件夹cd..:退回到上一级目录cd/或cd\:退回到根目录del:删除文件d: : 切换到D盘根 ...

  2. 03_MySQL中文乱码处理_02_确保MySQL插入数据不乱码的解决方法

    [要统一MySQL数据库客户端 和 服务端的字符集] 如下,就是不统一的情况: 通常,MySQL数据库的下面几个字符集(客户端 和 服务端)统一成一个字符集(即" show variable ...

  3. bzoj1260[CQOI2007]涂色paint

    思路:区间dp,用f[i][j]表示区间[i,j]的答案,然后转移即可. #include<iostream> #include<cstdio> #include<cst ...

  4. <s:iterator></s:iterator>循环指定输出,(status的方法使用)

    list集合中的实体的一个属性是另一个实体的集合(如下) public class PetInfo { private int petId; private String private Set< ...

  5. mysql远程连接缓慢的问题

    这两天发现服务器程序启动的时候到了mysql初始连接的那一步很耗时,启动缓慢,后来发现,将连接的主机的-h参数改成localhost的时候 瞬间就完成连接了.后来在网上查到,原来是由于mysql服务器 ...

  6. 【转】Java编程之字符集问题研究

    发现这是对字集说得最明了的一篇文章了. 转发自:http://tomcat-oracle.iteye.com/blog/2037160 1. 概述 本文主要包括以下几个方面:编码基本知识,java,系 ...

  7. linux centos cli all proxy

    linux centos 下代理http.https.ftp.all_proxy 全局使用代理: export http_proxy=http://host:port/ export https_pr ...

  8. PHP curl 采集内容之规则 1

    <?phpheader("Content-type:text/html; charset=utf-8");$pattern = '/xxx(.*)yyyy/isU'; //i ...

  9. Android Context创建过程

        特定的资源或者类构成了Android应用程序的运行上下文环境 PackageManager, ClassLoader, Assert等等 Android应用程序窗口的运行上下文环境是通过Con ...

  10. Qt之json解析

    Jsoner::Jsoner(QObject *parent) : QObject(parent){    QJsonObject json;    json.insert("loginna ...