是的,C# WebClient 類可以用于文件上傳。以下是一個(gè)簡(jiǎn)單的示例,展示了如何使用 WebClient 類上傳文件:
using System;
using System.IO;
using System.Net;
using System.Text;
using System.Threading.Tasks;
class Program
{
static async Task Main(string[] args)
{
// 要上傳的文件路徑
string filePath = @"C:\path\to\your\file.txt";
// 創(chuàng)建 WebClient 實(shí)例
using (WebClient webClient = new WebClient())
{
// 設(shè)置上傳文件的內(nèi)容類型
webClient.Headers.Add("Content-Type", "application/octet-stream");
// 讀取文件內(nèi)容并轉(zhuǎn)換為字節(jié)數(shù)組
byte[] fileBytes = File.ReadAllBytes(filePath);
// 設(shè)置要上傳的文件名
string fileName = Path.GetFileName(filePath);
// 使用 WebClient 的 UploadFile 方法上傳文件
byte[] responseBytes = await webClient.UploadFileTaskAsync("https://example.com/upload", fileName, fileBytes);
// 將響應(yīng)字節(jié)數(shù)組轉(zhuǎn)換為字符串
string response = Encoding.UTF8.GetString(responseBytes);
// 輸出響應(yīng)
Console.WriteLine("Response: " + response);
}
}
}
在這個(gè)示例中,我們首先創(chuàng)建了一個(gè) WebClient 實(shí)例,并設(shè)置了上傳文件的內(nèi)容類型。然后,我們讀取了要上傳的文件內(nèi)容并將其轉(zhuǎn)換為字節(jié)數(shù)組。接下來,我們?cè)O(shè)置了要上傳的文件名,并使用 WebClient 的 UploadFileTaskAsync 方法上傳文件。最后,我們將響應(yīng)字節(jié)數(shù)組轉(zhuǎn)換為字符串并輸出響應(yīng)。