1200字范文,内容丰富有趣,写作的好帮手!
1200字范文 > java怎么上传文件到web服务器_Java客户端通过Http发送POST请求上传文件到web服务器...

java怎么上传文件到web服务器_Java客户端通过Http发送POST请求上传文件到web服务器...

时间:2021-02-23 03:22:39

相关推荐

java怎么上传文件到web服务器_Java客户端通过Http发送POST请求上传文件到web服务器...

/WilliamJiang/archive//04/29/2475883.html

1.朋友的一个需求,让我给他实现,需求是这样的,需要用写一个页面负责处理客户端上传的文件,并根据传递的参数把文件保存到相应的目录。客户端是手机应用程序,因为没学过Android,所以我只是写了一个Java的Demo用来上传文件。

服务端:

public partial class _Default : System.Web.UI.Page

{

private string id = "";

private string userName = "";

private string type = "";

private string fileName = "";

//文件长度

private long contentLength = 0;

private static readonly string filePath = ConfigurationManager.AppSettings["filePath"];

protected void Page_Load(object sender, EventArgs e)

{

if (!IsPostBack)

{

id = Request["id"];

userName = Request["user"];

type = Request["type"];

fileName = Request.Headers["FileName"];

writeFile();

}

}

///

/// 上传文件

///

private void writeFile()

{

try

{

Stream stream = Request.InputStream;

contentLength = stream.Length;

string currentFilePath = filePath + userName;

if (!Directory.Exists(currentFilePath))

{

Directory.CreateDirectory(currentFilePath);

}

FileStream fileStream = File.Create(currentFilePath + @"\" + fileName);

//每次读取的1024个字节

byte[] bytes = new byte[1024];

int numReadByte = 0;

while ((numReadByte = stream.Read(bytes, 0, 1024)) != 0)

{

fileStream.Write(bytes, 0,numReadByte);

}

//关闭流

stream.Close();

fileStream.Close();

}

Java文件上传客户端示例,(几年没搞java有点生疏了):

import java.io.BufferedOutputStream;

import java.io.DataInputStream;

import java.io.File;

import java.io.FileInputStream;

import .HttpURLConnection;

import .URL;

/**

*

* 只是写的一个示例,filePath,和FileName根据需要进行调整。

*/

public class MyTest {

/**

* @param args

*/

public static void main(String[] args) {

// TODO Auto-generated method stub

String str="http://localhost:2906/Default.aspx?id=1&user=2&type=3";

String filePath="D:\\Wildlife.wmv";

String fileName="Wildlife.wmv";

try {

URL url=new URL(str);

HttpURLConnection connection=(HttpURLConnection)url.openConnection();

connection.setDoInput(true);

connection.setDoOutput(true);

connection.setRequestMethod("POST");

connection.addRequestProperty("FileName", fileName);

connection.setRequestProperty("content-type", "text/html");

BufferedOutputStream out=new BufferedOutputStream(connection.getOutputStream());

//读取文件上传到服务器

File file=new File(filePath);

FileInputStream fileInputStream=new FileInputStream(file);

byte[]bytes=new byte[1024];

int numReadByte=0;

while((numReadByte=fileInputStream.read(bytes,0,1024))>0)

{

out.write(bytes, 0, numReadByte);

}

out.flush();

fileInputStream.close();

//读取URLConnection的响应

DataInputStream in=new DataInputStream(connection.getInputStream());

} catch (Exception e) {

e.printStackTrace();

}

}

}

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。