java 上传文件 csdn
时间: 2023-09-20 11:12:39 浏览: 69
要在 Java 中上传文件到 CSDN,你需要使用 HTTP POST 请求。具体步骤如下:
1. 创建一个 URL,指向 CSDN 的文件上传接口。
2. 创建一个 HttpURLConnection 对象,使用 POST 请求方法。
3. 设置 HttpURLConnection 对象的请求头,包括 Content-Type、Authorization 等。
4. 打开 HttpURLConnection 的输出流,写入要上传的文件。
5. 关闭输出流,获取服务器响应,判断上传是否成功。
以下是一个简单的示例代码:
```
import java.io.*;
import java.net.HttpURLConnection;
import java.net.URL;
public class FileUploader {
public static void main(String[] args) throws Exception {
String csdnUrl = "https://upload.csdn.net/upload/save"; // CSDN 文件上传接口
String filePath = "/path/to/file"; // 要上传的文件路径
String fileName = "filename.ext"; // 要上传的文件名
URL url = new URL(csdnUrl);
HttpURLConnection conn = (HttpURLConnection) url.openConnection();
conn.setRequestMethod("POST");
conn.setDoOutput(true);
conn.setRequestProperty("Content-Type", "multipart/form-data; boundary=----WebKitFormBoundary7MA4YWxkTrZu0gW");
OutputStream os = conn.getOutputStream();
File file = new File(filePath);
FileInputStream fis = new FileInputStream(file);
byte[] buffer = new byte[4096];
int bytesRead = -1;
while ((bytesRead = fis.read(buffer)) != -1) {
os.write(buffer, 0, bytesRead);
}
os.flush();
os.close();
fis.close();
int responseCode = conn.getResponseCode();
if (responseCode == HttpURLConnection.HTTP_OK) {
InputStream is = conn.getInputStream();
BufferedReader reader = new BufferedReader(new InputStreamReader(is));
String line = null;
while ((line = reader.readLine()) != null) {
System.out.println(line);
}
reader.close();
} else {
System.out.println("Upload failed with HTTP error code " + responseCode);
}
}
}
```
在实际使用中,你需要根据具体的需求修改代码中的 URL、文件路径和文件名等参数。另外,你需要将 Authorization 请求头替换为你自己的授权信息。
阅读全文