C# 不通过FTP 将本地文件拷贝到服务器(代码)

如题所述

System.IO.相关的类可以完成这个任务。下面是我写的代码片段,仅供参考。注意:首先你要连接到服务器。
祝你好运!呵呵!

代码片段如下:
1 连接到服务器片段:
/// 可以调用它执行连接服务器的操作
public static uint WNetAddConnection(string username, string password, string remoteName, string localName)
{
NetResource netResource = new NetResource();
netResource.dwScope = 2; //RESOURCE_GLOBALNET
netResource.dwType = 1; //RESOURCETYPE_ANY
netResource.dwDisplayType = 3; //RESOURCEDISPLAYTYPE_GENERIC
netResource.dwUsage = 1; //RESOURCEUSAGE_CONNECTABLE
netResource.lpLocalName = localName;
netResource.lpRemoteName = remoteName.TrimEnd('\\');
//netResource.lpRemoteName = lpComment;
//netResource.lpProvider = null;
uint result = WNetAddConnection2(netResource, password, username, 0);
return result;//HGDVTES22
}

2 操作服务器上的文件片段:

try
{
// 弹出新建文件夹窗口,并将自己(指针)传入到子窗口中去
NewFile_Folder newFolderWin = new NewFile_Folder(this);
newFolderWin.ShowDialog();
// 判断文件名是否为 空字符串 或者 null
if (!"".Equals(this.strNewFileName))
{
if (this.tvwServerFileSys.SelectedNode != null)
{
string strServerRoot = this.txtSourceServer.Text.Trim();
strServerRoot = strServerRoot + txtServerFileSysPath.Text.Substring(0, txtServerFileSysPath.Text.LastIndexOf('\\') + 1);
if (System.IO.Directory.Exists(this.tvwServerFileSys.SelectedNode.Name))
{
// 新建文件/文件夹节点
TreeNode newNode = new TreeNode(this.strNewFileName);
newNode.Name = this.tvwServerFileSys.SelectedNode.Name + "\\" + this.strNewFileName;
this.tvwServerFileSys.SelectedNode.Nodes.Insert(this.tvwServerFileSys.SelectedNode.Nodes.Count, newNode);
// 在服务器上建立 文件/文件夹
if (this.strNewType == "file")
{
System.IO.File.Create(newNode.Name);
}
else if (this.strNewType == "folder")
{
System.IO.Directory.CreateDirectory(newNode.Name);
}
else
{
throw new Exception("没有选择新建类型");
}
}
else
{
throw new Exception("清选择目录节点新建文件夹");
}
}
else
{
throw new Exception("请选择 目录节点");
}
}
else
{
throw new Exception("新文件名称是空字符串");
}
}
catch (Exception ex)
{
MessageBox.Show(ex.Message);
}
温馨提示:内容为网友见解,仅供参考
第1个回答  2013-06-06
你是要手动拷贝还是还是代码实现追问

代码实现

从服务器拷贝一个文件到另一个服务器,用C#实现
WCF技术,把文件序列化后传输到另一台服务器,之后再反序列化。不必把服务器的概念界定得太严格,当拷贝一个文件到另一台机子上时,可以把当前机器当成客户端,目标机器是服务器。

谁有c#操作关于FTP的代码,遇见了这个问题,解决不了了啊
Directory.Delete("path", true);我想说的是,我的回答不正确,FTP动态文件夹不像本地那样删除,首先要改变ftp管理类的操作方法,reqFTP.Method = WebRequestMethods.Ftp.DeleteFile 而操作ftp管理类只能通过实实在在的文件实例化,所以只能遍历删除。

c#怎么将文件上传至服务器指定目录
比如1写个webservice在客户端调用一点一点传2开个ftp在server上客户端使用ftp命名空间操作上传.3服务器开启个socket客户端连接并且把文件转成byte发过去.

如何在客户端把文件上传到服务器端的共享文件夹?c#
然后把文件直接复制到\\\\server\\c$即可.(其实这是2k的一个可笑的漏洞)2.服务器如果是xp,2003.vista,以上方法就不行了.(1)可以在服务器上安装个QQ,客户机的QQ给服务器的QQ传文件.(2)服务器安装ftp服务端软件,客户机通过ftp上传到c盘 (3)开启服务器c盘共享(可写),客户端通过共享上传.(4)第三方...

求一个从FTP下载指定文件到本地计算机的C#代码。
public bool DownloadFile(string RemoteFileName, string LocalPath){ return DownloadFile(RemoteFileName, LocalPath, RemoteFileName);} \/**\/\/\/ \/\/\/ 从FTP服务器下载文件,指定本地路径和本地文件名 \/\/\/ \/\/\/ 远程文件名 \/\/\/ 本地路径 \/\/\/ 保存文件的本地路径,后面带有"\\" \/\/\/ 保存本...

c# ftp上传方式把文件上传到指定服务器!
\/\/\/ 上传文件到FTP服务器 \/\/\/ \/\/\/ FTP访问地址 \/\/\/ 用户名 \/\/\/ 密码 \/\/\/ 地址 \/\/\/ <returns><\/returns> public static bool UpLoadFileFtp(string ftpServerIp, string userName, string userPass, string filePath, string strPath){ bool res =false;string ftpUrl = CommConst.ftp...

C#中如何实现文件上传服务器。
FTP上传文件需要FTP用户和密码,采用的是FTP协议上传。WCF可以采用FTP和HTTP协议进行上传,关键在于你的实现方式,WCF只是一种数据通信框架。HttpwebClient采用HTTP协议,可以做很多事情包括上传文件。相比之下,FTP协议上传文件会较快,但需要有FTP服务器,还要维护FTP的用户名和密码。不知道你要开发的系统有...

(C#)SSH.NET sftp常用操作工具类代码(连接,上传,下载,删除,移动)
文件上传操作主要通过SftpClient实例的Put方法实现。通过指定本地文件路径和目标远程文件路径,即可将本地文件传输至SFTP服务器。为了确保上传过程的稳定性和安全性,可以设置上传模式,如ASCII、binary等。下载文件同样利用SftpClient的Get方法,通过提供目标本地文件路径和SFTP服务器上的源文件路径,实现文件从...

C#中FTP编程 远程服务器返回错误: (550) 文件不可用(例如,未找到文件...
你的文件路径在ftp中已经存在,再次创建则会报这个错误 。

求c#代码,怎么获得一段时间内文件数量,比如一小时内
有点不明白你这个文件是放在哪里?是本地、服务器、还是数据库?1、如果是本地,可以通过获取文件的生成时间来得到一定时间内的文件数,代码如下:DirectoryInfo root = new DirectoryInfo(filepath); \/\/filepath 需检索的文件夹路径 DirectoryInfo[] dics = root.GetDirectories(); FileInfo[] fi...

相似回答