有,你用FTP将服务器上的要想的文件夹载到本机不就行了。我上个月就有用到过。那时候还写了一个Windows服务程序用来监视服务器上指定根目录下有没有生成新的文件夹,如果有的话就把它FTP到另一台机子保证文件的同步。像你的情况,好像更简单些。下面是我的从服务器上传到另一台机用的部份代码(事先我已经建好了FTP目录),你的情况是下载到本机类似:
只是一个大致思路,具体的话你得自己试着调试.
string FtpServer = "127.0.0.1";//要上传到的目标机地址
string FtpDir ="/" ;//目标机目录.比方目标机FTP目录是C:\Inetpub\ftproot 此处用"/"则表示将文件上传到该目录下
string FtpUserId = "administrator";//FTP用户名 此用户必须有读取和写入的权限
string FtpPw = "1";//FTP密码
int FtpPort = 21;//FTP端口号
string UploadFile =@"E:\NetWindow\Files\XLSModel\ReportFile\" + NowDate;//本地要上传的文件地址,注意地址最后不要写\,否则ftp时会出错
FTP myftp = new FTP(FtpServer, FtpDir, FtpUserId, FtpPw, FtpPort);
myftp.Connect();
if (myftp.Connected)
{
try
{
myftp.Put(UploadFile, "*", true); // 上传到另一台机中
}
catch {}
finally
{
myftp.DisConnect();
}
}
只是一个大致思路,具体的话你得自己试着调试.
string FtpServer = "127.0.0.1";//要上传到的目标机地址
string FtpDir ="/" ;//目标机目录.比方目标机FTP目录是C:\Inetpub\ftproot 此处用"/"则表示将文件上传到该目录下
string FtpUserId = "administrator";//FTP用户名 此用户必须有读取和写入的权限
string FtpPw = "1";//FTP密码
int FtpPort = 21;//FTP端口号
string UploadFile =@"E:\NetWindow\Files\XLSModel\ReportFile\" + NowDate;//本地要上传的文件地址,注意地址最后不要写\,否则ftp时会出错
FTP myftp = new FTP(FtpServer, FtpDir, FtpUserId, FtpPw, FtpPort);
myftp.Connect();
if (myftp.Connected)
{
try
{
myftp.Put(UploadFile, "*", true); // 上传到另一台机中
}
catch {}
finally
{
myftp.DisConnect();
}
}
解决方案 »
- 提示str.Trim() 未将对象引用设置到实例,应该怎样将str中的数据引用
- 新手学C#,问一个低级的问题,很容易,满意就给分。
- [请大家讨论]免费邮箱SMTP发邮件的参数设置问题。。。
- 帮忙估各价格 谢谢!!
- 怎么从数据库读出数据,创建一个图片文件
- 如何使PictureBox中背景透明的图片显示出来后背景真正透明
- 有没有经典一点的物流软件,测试版的也行
- 什么在影响着DataGrid的RowHeaderWidth属性设置????
- c#中怎么读取sqlserver数据表中的binary类型的字段,如下题?
- [WPF]关于MemoryStream在子线程中操作报ArgumentException异常的问题
- 传参数中数据类型转换的错误!
- 哪位老大赶快近来帮个忙啊,在线急等!!!
{
int flag = 0;
try
{
DirectoryInfo dir = new DirectoryInfo(oldPath);
DirectoryInfo[] dirinfo = dir.GetDirectories();
foreach (DirectoryInfo dirs in dirinfo)
{
string dname = dirs.Name;//获取目录名
try
{
DateTime d = DateTime.Parse(dname);
if (d >= dt1 && d <= dt2)
{
flag = 1;
Directory.CreateDirectory(newPath+"\\"+dname);
//遍历文件夹下的所有子文件夹及文件
ListFiles(dirs, oldPath + "\\" + dname, newPath+"\\"+dname); }
}
catch (Exception exp)
{ //MessageBox.Show(exp.Message);
}
}
return flag;
}
catch (Exception exp)
{
MessageBox.Show(exp.Message);
return 2;
}
}
/// <summary>
/// 递归备份文件
/// </summary>
/// <param name="dirinfo">符合条件的目录或目录组</param>
/// <param name="olddirPath">要备份的目录</param>
/// <param name="newdirPath">新目录</param>
private void ListFiles(DirectoryInfo dirinfo,string olddirPath,string newdirPath)
{
if (!dirinfo.Exists) return;
DirectoryInfo[] dirs = dirinfo.GetDirectories();//返回所有子目录
FileInfo[] files = dirinfo.GetFiles();//返回所有文件 //存在文件
if (files.Length >0)
{
foreach (FileInfo f in files)
{
string filename = f.Name; //获取文件名
f.MoveTo(newdirPath+"\\"+filename);
} }
//存在目录
if (dirs.Length >0)
{
foreach (DirectoryInfo d in dirs)
{
string dirname = d.Name;
Directory.CreateDirectory(newdirPath+"\\"+dirname);//创建目录
ListFiles(d, olddirPath, newdirPath + "\\" + dirname);
}
}
}