用java写一个文件上传
时间: 2024-05-09 12:17:51 浏览: 4
下面是使用 Java 实现文件上传的简单示例代码:
```java
import java.io.File;
import java.io.IOException;
import java.io.InputStream;
import java.net.HttpURLConnection;
import java.net.URL;
public class FileUploader {
private static final int BUFFER_SIZE = 4096;
public static void uploadFile(String uploadUrl, String filePath) throws IOException {
URL url = new URL(uploadUrl);
HttpURLConnection conn = (HttpURLConnection) url.openConnection();
conn.setDoOutput(true);
conn.setRequestMethod("POST");
File file = new File(filePath);
InputStream inputStream = FileUtils.openInputStream(file);
byte[] buffer = new byte[BUFFER_SIZE];
int bytesRead = -1;
while ((bytesRead = inputStream.read(buffer)) != -1) {
conn.getOutputStream().write(buffer, 0, bytesRead);
}
inputStream.close();
conn.getResponseCode(); // 发送请求
conn.disconnect(); // 断开连接
}
}
```
这个示例代码使用 `HttpURLConnection` 类来与服务器建立连接,并使用 `POST` 方法将文件上传到指定的 URL 地址。它使用 `FileUtils` 类中的 `openInputStream()` 方法打开文件输入流,并使用 `OutputStream` 将文件的内容写入 `HttpURLConnection` 的输出流中。最后,该代码获取服务器的响应代码,并断开连接。
请注意,示例代码可能需要根据您的具体需求进行修改,例如更改 `BUFFER_SIZE` 常量以适应您的文件大小,或添加其他 HTTP 请求头。