java实现分段读取文件并通过HTTP上传的方法

本文实例讲述了java实现分段读取文件并通过HTTP上传的方法。分享给大家供大家参考。具体如下:

1、首先将文件分段,用RandomAccessFile
2、分段后将分出的内容上传到http

URL url = new URL(actionUrl);
HttpURLConnection con = (HttpURLConnection) url.openConnection();
/** 允许Input、Output,不使用Cache */
con.setDoInput(true);
con.setDoOutput(true);
con.setUseCaches(false);
/** 设定传送的method=POST */
con.setRequestMethod("POST");
/** setRequestProperty */
con.setRequestProperty("Connection", "Keep-Alive");
con.setRequestProperty("Charset", "UTF-8");
con.setRequestProperty("Content-Type",
 "multipart/form-data;boundary=" + boundary);
/** 设定DataOutputStream */
DataOutputStream ds = new DataOutputStream(con.getOutputStream());
ds.writeBytes(twoHyphens + boundary + end);
ds.writeBytes("Content-Disposition: form-data; "
 + "name=\"file1\";filename=\"" + newName + "\"" + end);
ds.writeBytes(end);
/** 取得文件的FileInputStream */
FileInputStream fStream = new FileInputStream(uploadFile);
/** 设定每次写入1024bytes */
int bufferSize = 1024;
byte[] buffer = new byte[bufferSize];
int length = -1;
/** 从文件读取数据到缓冲区 */
while ((length = fStream.read(buffer)) != -1)
{
/** 将数据写入DataOutputStream中 */
ds.write(buffer, 0, length);
}
ds.writeBytes(end);
ds.writeBytes(twoHyphens + boundary + twoHyphens + end);
/** close streams */
fStream.close();
ds.flush();

希望本文所述对大家的java程序设计有所帮助。

(0)

相关推荐

  • java读取文件显示进度条的实现方法

    实现这个功能比较简单,用到的类有两个:ProgressMonitorInputStream(主要是整个类) 和 ProgressMonitor ,它们在javax.swing中大体思路,你要首先知道整个文件的大小,和当前已经读取文件的大小,获得整个文件大小的方法 复制代码 代码如下: ProgressMonitorInputStream monitor;/*** @param 表示此进度条要依附在哪个组件上* @param 显示在此进度条上的消息* @param 需要监控的输入流*/monito

  • java通过url读取文件内容示例

    复制代码 代码如下: using System;  using System.Collections;  using System.ComponentModel;  using System.Data;  using System.Drawing;  using System.Web;  using System.Web.SessionState;  using System.Web.UI;  using System.Web.UI.WebControls;  using System.Web.

  • JAVA读取文件夹大小的几种方法实例

    (一)单线程递归方式 复制代码 代码如下: package com.taobao.test; import java.io.File; public class TotalFileSizeSequential { public static String fileName = "C:\\Documents and Settings\\Administrator\\桌面\\monkeytalk"; // 递归方式 计算文件的大小    private long getTotalSizeO

  • java读取某个文件夹下的所有文件实例代码

    java读取某个文件夹下的所有文件          学习java基础知识,读取文件,读取某个文件夹,需要读取所有文件,如何实现呢,看下实例代码. 实例代码: import java.io.FileNotFoundException; import java.io.IOException; import java.io.File; public class ReadFile { public ReadFile() { } /** * 读取某个文件夹下的所有文件 */ public static

  • Java读取文件的简单实现方法

    本文实例讲述了Java读取文件的简单实现方法,非常实用.分享给大家供大家参考之用.具体方法如下: 这是一个简单的读取文件的代码,并试着读取一个log文件,再输出. 主要代码如下: import java.io.*; public class FileToString { public static String readFile(String fileName) { String output = ""; File file = new File(fileName); if(file.

  • Java实现读取文件夹下(包括子目录)所有文件的文件名

    在编程的过程中,经常会用到对文件的读写操作等.比如,找出某一个文件夹下的所有文件名等. 下面的程序给出了,获取某一给定文件夹下所有文件的绝对路径的程序.可以作为某一个模块,在需要的时候直接使用. package src; import java.io.BufferedWriter; import java.io.File; import java.io.FileOutputStream; import java.io.IOException; import java.io.OutputStrea

  • java读取文件内容的三种方法代码片断分享(java文件操作)

    复制代码 代码如下: try {           // 方法一           BufferedReader br = new BufferedReader(new FileReader(new File(                   "D:\\1.xls")));           // StringBuilder bd = new StringBuilder();           StringBuffer bd = new StringBuffer();   

  • java按指定编码写入和读取文件内容的类分享

    可以指定编码如:utf-8来写入和读取文件.如果文件编码未知,可以通过该方法先得到文件的编码后再指定正确的编码来读取,否则会出现文件乱码问题. 如何识别文件编码请参考:java自动根据文件内容的编码来读取避免乱码 复制代码 代码如下: package com.zuidaima.util; import java.io.BufferedReader;import java.io.BufferedWriter;import java.io.File;import java.io.FileInputS

  • java实现分段读取文件并通过HTTP上传的方法

    本文实例讲述了java实现分段读取文件并通过HTTP上传的方法.分享给大家供大家参考.具体如下: 1.首先将文件分段,用RandomAccessFile 2.分段后将分出的内容上传到http URL url = new URL(actionUrl); HttpURLConnection con = (HttpURLConnection) url.openConnection(); /** 允许Input.Output,不使用Cache */ con.setDoInput(true); con.s

  • JAVA按字节读取文件的简单实例

    JAVA的IO流一直都是我比较头疼的部分(我没有系统学过JAVA,一般需要实现什么功能再去看文档). 最近遇到一个需求:一个字节一个字节地读取一个文件.网上很多方法,代码一大堆.我在这里和大家分享一个简单的办法(至少对我的需求是有效的). File file= new File(fileName); //filename为 文件目录,请自行设置 InputStream in= null; byte[] bytes= null; in = new FileInputStream(file); //

  • Java 按行读取文件按行写入文件并以空格分割字符串的方法

    首先是按行读取字符串 import java.io.BufferedReader; import java.io.File; import java.io.FileReader; public class TxtChange { public static void main(String[] args){ File file=new File("E:\\oldData.txt"); BufferedReader reader=null; String temp=null; int l

  • java 按行读取文件并输出到控制台的方法

    如下所示: public static void main(String[] args) throws IOException { /* * 1.打开一个file * 2.new一个InputStreamReader←FileInputStream←file * 3.用BufferedReader(←InputStreamReader)的readLine()方法读取 * */ File ctoFile = new File("C://Users//gl//Desktop//ku//51cto.t

  • java使用smartupload组件实现文件上传的方法

    本文实例讲述了java使用smartupload组件实现文件上传的方法.分享给大家供大家参考.具体分析如下: 文件上传几乎是所有网站都具有的功能,用户可以将文件上传到服务器的指定文件夹中,也可以保存在数据库中,这里主要说明smartupload组件上传. 在讲解smartupload上传前,我们先来看看不使用组件是怎么完成上传的原理的? 废话不多说直接上代码: 复制代码 代码如下: import java.io.*; import java.util.*; import javax.servle

  • Java实现文件上传的方法总结

    目录 1.文件上传接收文件接口 2.接口主要内容部分 3.postman接口调用 1.文件上传接收文件接口 Controller成通过post上传方式定义接口,上传文件通常使用post的上传方式,get用于获取数据.文件. 单个入参可以使用@RequestParam标注,不用封装到类里边在使用@RepuestBody映射 @PostMapping(value = "/uploadFile") @ApiOperation(value = "文件上传", notes =

  • C++ 读取文件内容到指定类型的变量方法

    如下所示: #include <iostream> #include <fstream> #include <sstream> #include <string> using namespace std; int main(){ cout << "input the file name: "; string file_name; cin >> file_name; cout << endl; // if

  • JAVA实现FTP断点上传的方法

    本文实例讲述了JAVA实现FTP断点上传的方法.分享给大家供大家参考.具体分析如下: 这里主要使用apache中的net包来实现.网址http://commons.apache.org/net/.具体包的下载和API文档请看官网. 断点上传就是在上传的过程中设置传输的起始位置.并设置二进制传输. import java.io.File; import java.io.FileInputStream; import java.io.FileOutputStream; import java.io.

  • SpringBoot整合MinIO实现文件上传的方法详解

    目录 前言 1. MinIO 简介 2. MinIO 安装 3. 整合 Spring Boot 4. 配置nginx 5. 小结 前言 现在 OSS 服务算是一个基础服务了,很多云服务厂商都有提供这样的服务,价格也不贵,松哥自己的网站用的就是类似的服务. 不过对于中小公司来说,除了购买 OSS 服务之外,也可以自己搭建专业的文件服务器,自己搭建专门的文件服务器的话,曾经比较专业的做法是 FastDFS,松哥之前也专门为之录过视频发在 B 站上,感兴趣的小伙伴可以自行查看.不过 FastDFS 搭

  • 使用HttpClient实现文件的上传下载方法

    1 HTTP HTTP 协议可能是现在 Internet 上使用得最多.最重要的协议了,越来越多的 Java 应用程序需要直接通过 HTTP 协议来访问网络资源. 虽然在 JDK 的 java.net 包中已经提供了访问 HTTP 协议的基本功能,但是对于大部分应用程序来说,JDK 库本身提供的功能还不够丰富和灵活.HttpClient 用来提供高效的.最新的.功能丰富的支持 HTTP 协议的客户端编程工具包,并且它支持 HTTP 协议最新的版本和建议. 一般的情况下我们都是使用Chrome或者

随机推荐