列出一个完整代码的文件上传下载的java代码
时间: 2024-04-13 11:26:45 浏览: 28
当然,请参考以下完整的文件上传和下载的Java代码:
文件上传代码:
```java
import java.io.File;
import java.io.FileInputStream;
import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;
import java.net.HttpURLConnection;
import java.net.URL;
public class FileUploader {
public static void main(String[] args) {
String fileToUpload = "path/to/file.txt";
String uploadUrl = "http://example.com/upload";
try {
uploadFile(fileToUpload, uploadUrl);
System.out.println("File uploaded successfully.");
} catch (IOException e) {
System.out.println("File upload failed: " + e.getMessage());
}
}
public static void uploadFile(String fileToUpload, String uploadUrl) throws IOException {
File file = new File(fileToUpload);
URL url = new URL(uploadUrl);
HttpURLConnection connection = (HttpURLConnection) url.openConnection();
connection.setDoOutput(true);
connection.setRequestMethod("POST");
try (InputStream inputStream = new FileInputStream(file);
OutputStream outputStream = connection.getOutputStream()) {
byte[] buffer = new byte[4096];
int bytesRead;
while ((bytesRead = inputStream.read(buffer)) != -1) {
outputStream.write(buffer, 0, bytesRead);
}
outputStream.flush();
}
int responseCode = connection.getResponseCode();
System.out.println("Server response code: " + responseCode);
connection.disconnect();
}
}
```
文件下载代码:
```java
import java.io.BufferedInputStream;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.net.HttpURLConnection;
import java.net.URL;
public class FileDownloader {
public static void main(String[] args) {
String fileToDownload = "http://example.com/file.txt";
String downloadPath = "path/to/save/file.txt";
try {
downloadFile(fileToDownload, downloadPath);
System.out.println("File downloaded successfully.");
} catch (IOException e) {
System.out.println("File download failed: " + e.getMessage());
}
}
public static void downloadFile(String fileToDownload, String downloadPath) throws IOException {
URL url = new URL(fileToDownload);
HttpURLConnection connection = (HttpURLConnection) url.openConnection();
try (InputStream inputStream = new BufferedInputStream(connection.getInputStream());
FileOutputStream outputStream = new FileOutputStream(downloadPath)) {
byte[] buffer = new byte[4096];
int bytesRead;
while ((bytesRead = inputStream.read(buffer)) != -1) {
outputStream.write(buffer, 0, bytesRead);
}
outputStream.flush();
}
int responseCode = connection.getResponseCode();
System.out.println("Server response code: " + responseCode);
connection.disconnect();
}
}
```
请注意,这只是一个基本的示例,你可能需要根据具体的要求进行进一步的调整和改进。
阅读全文