在C#中,我需要在上传当前发布网站图片后,把该图片复制到另一台服务器的一个文件夹内,我能提供另一台服务器上的账号和密码,并且我在当前服务器上可以访问到另一台服务器的文件夹,在代码中我该怎么写,事例
时间: 2024-09-10 17:07:35 浏览: 44
C#实现复制文件夹中文件到另一个文件夹的方法
5星 · 资源好评率100%
在C#中,你可以使用System.Net命名空间下的DirectoryCopy方法或者HttpClient来进行文件复制操作。这里我会给出两个示例,一个是使用DirectoryCopy,另一个是使用HttpClient UploadFile。
**使用DirectoryCopy方法**:
```csharp
using System.IO;
// 获取另一台服务器的文件路径、源文件路径以及目标文件夹路径
string sourcePath = "C:\\LocalServer\\Images\\YourImage.jpg";
string serverUrl = "http://RemoteServer/IP/FolderToUpload/";
string targetFolder = "Pictures/";
// 构建完整的目标文件路径
string targetRemotePath = targetFolder + Path.GetFileName(sourcePath);
try
{
// 账号和密码授权 (假设已经封装在Credentials类中)
NetworkCredential credentials = new NetworkCredential("username", "password");
// 创建网络目录上下文
DirectoryContext context = new DirectoryContext(DirectoryContextType.Server, serverUrl, credentials);
// 复制文件到远程服务器
Directory.Copy(sourcePath, targetRemotePath, true); // 第三个参数表示是否递归
Console.WriteLine($"文件 {sourcePath} 已经复制到 {serverUrl}{targetRemotePath}");
}
catch (Exception ex)
{
Console.WriteLine($"复制文件失败: {ex.Message}");
}
//
阅读全文