1、C# winform 定時下載遠程伺服器的文件夾裡面當天修改過的文件。 高人指點。
這可以這樣,
遠程是ftp的,ftp協議支持讀取文件的修改時間,根據修改時間就可以分辨了。
遠程是web的,並且你的內容是任意內容(當然你要通過web下載有些擴展名的文件,可能要在web伺服器的設置里添加很多允許下載擴展名mime)那你需要一個目錄清單,假設你是asp.net,最保險就是自己寫一個,具體:首先初始化一份log類文件,裡面存著需要維護的文件和文件夾的當前初始信息,這些信息主要包括文件(夾)名,大小、修改時間、md5碼、是否還有子文件或目錄。再在全局文件Global.asax里建立一個線程,每隔一定時間調用方法掃描一次你需要維護的文件和文件夾,更新log文件,也可以作一個頁面當被訪問了再去核對當前需要維護的文件和文件夾與log文件的不同,再記錄新信息並且直接返回新log,這樣可以讓php這類沒有默認的全局的後台web語言一樣能行。當然這些事情也可以通過直接的exe程序,當然這對遠程伺服器的要求就更高了。
本地只要定時去得到這個log文件就可以根據它來選擇下載那些文件了
如果不能維護log,也不能取得修改時間,那你只能先把文件之一下載下來,算出md5然後與當前的本地的比對,按照結果來決定換不換成新伺服器上的文件,然後下一個。。。。
2、你好。請問winform 如何判斷遠程伺服器是否存在文件夾 如果不存在 則創建一個?可以發下代碼到我郵箱嗎?
在伺服器寫個WEBSERVICE,文件文件夾操作碼用IO類網路一下非常豐富
然後WINFORM去調用.
簡單實用
不然本地的WINFORM是沒有許可權操作伺服器的許可權
3、winform怎麼獲取伺服器上的文件路徑
WinForm是獲取不到伺服器上的文件路徑的,否則太可怕了。
除非伺服器通過Web服務的介面返回。
4、c# winform獲得apache phpStudy Lite2014伺服器某個文件夾下的所有文件名
遠程伺服器要是不開放目錄瀏覽許可權是不可能遍歷的。
5、C# winform 如何將文件遠程上傳到伺服器上的網站文件夾?
在網上查查上傳圖片的代碼。介紹jmail的上傳附件的就有 下面的是按鈕點擊方法
html:
<asp:FileUpload ID="fufujian" runat="server" style ="border-left-style:none;border-right-style:none;border-top-style:none; " />
<asp:Button ID="Button1" runat="server" onclick="Button1_Click" Text="Button" />
********************************************************************************************************************************************************************************************************************
.cs文件
按鈕點擊
if (fufujian.HasFile)
{
//指定上傳文件在伺服器上的保存路徑
string savePath = Server.MapPath("~/upload/");
//檢查伺服器上是否存在這個物理路徑,如果不存在則創建
if (!System.IO.Directory.Exists(savePath))
{
//需要注意的是,需要對這個物理路徑有足夠的許可權,否則會報錯
//另外,這個路徑應該是在網站之下,而將網站部署在C盤卻把上傳文件保存在D盤
System.IO.Directory.CreateDirectory(savePath);
}
savePath = savePath + "\\" + fufujian.FileName;
fufujian.SaveAs(savePath);//保存文件
//不過需要注意的是,在客戶端訪問卻需要指定的是URL地址,而不是在伺服器上的物理地址
// Response.Write(savePath);
// Response.End();
//Response.Write(string.Format("<a href='upload/{0}'>upload/{0}</a>", fufujian.FileName));
//Response.End();
6、C#winform怎麼獲取伺服器D盤的路徑
//獲取當前進程的完整路徑,包含文件名(進程名)。
string str = this.GetType().Assembly.Location;
result: X:\xxx\xxx\xxx.exe (.exe文件所在的目錄+.exe文件名)
//獲取新的Process 組件並將其與當前活動的進程關聯的主模塊的完整路徑,包含文件名(進程名)。
string str = System.Diagnostics.Process.GetCurrentProcess().MainMole.FileName;
result: X:\xxx\xxx\xxx.exe (.exe文件所在的目錄+.exe文件名)
//獲取和設置當前目錄(即該進程從中啟動的目錄)的完全限定路徑。
string str = System.Environment.CurrentDirectory;
result: X:\xxx\xxx (.exe文件所在的目錄)
//獲取當前 Thread 的當前應用程序域的基目錄,它由程序集沖突解決程序用來探測程序集。
string str = System.AppDomain.CurrentDomain.BaseDirectory;
result: X:\xxx\xxx\ (.exe文件所在的目錄+"\")
//獲取和設置包含該應用程序的目錄的名稱。
string str = System.AppDomain.CurrentDomain.SetupInformation.ApplicationBase;
result: X:\xxx\xxx\ (.exe文件所在的目錄+"\")
//獲取啟動了應用程序的可執行文件的路徑,不包括可執行文件的名稱。
string str = System.Windows.Forms.Application.StartupPath;
result: X:\xxx\xxx (.exe文件所在的目錄)
//獲取啟動了應用程序的可執行文件的路徑,包括可執行文件的名稱。
string str = System.Windows.Forms.Application.ExecutablePath;
result: X:\xxx\xxx\xxx.exe (.exe文件所在的目錄+.exe文件名)
//獲取應用程序的當前工作目錄(不可靠)。
string str = System.IO.Directory.GetCurrentDirectory();
result: X:\xxx\xxx (.exe文件所在的目錄)
7、c# winform獲得伺服器某個文件夾下的所有文件名
C#,Ftp各種操作,上傳,下載,刪除文件,創建目錄,刪除目錄,獲得文件列表等
using System;
using System.Collections.Generic;
using System.Text;
using System.Net;
using System.IO;
using System.Windows.Forms;
namespace ConvertData
{
class FtpUpDown
{
string ftpServerIP;
string ftpUserID;
string ftpPassword;
FtpWebRequest reqFTP;
private void Connect(String path)//連接ftp
{
// 根據uri創建FtpWebRequest對象
reqFTP = (FtpWebRequest)FtpWebRequest.Create(new Uri(path));
// 指定數據傳輸類型
reqFTP.UseBinary = true;
// ftp用戶名和密碼
reqFTP.Credentials = new NetworkCredential(ftpUserID, ftpPassword);
}
public FtpUpDown(string ftpServerIP, string ftpUserID, string ftpPassword)
{
this.ftpServerIP = ftpServerIP;
this.ftpUserID = ftpUserID;
this.ftpPassword = ftpPassword;
}
//都調用這個
private string[] GetFileList(string path, string WRMethods)//上面的代碼示例了如何從ftp伺服器上獲得文件列表
{
string[] downloadFiles;
StringBuilder result = new StringBuilder();
try
{
Connect(path);
reqFTP.Method = WRMethods;
WebResponse response = reqFTP.GetResponse();
StreamReader reader = new StreamReader(response.GetResponseStream(), System.Text.Encoding.Default);//中文文件名
string line = reader.ReadLine();
while (line != null)
{
result.Append(line);
result.Append("\n");
line = reader.ReadLine();
}
// to remove the trailing '\n'
result.Remove(result.ToString().LastIndexOf('\n'), 1);
reader.Close();
response.Close();
return result.ToString().Split('\n');
}
catch (Exception ex)
{
System.Windows.Forms.MessageBox.Show(ex.Message);
downloadFiles = null;
return downloadFiles;
}
}
public string[] GetFileList(string path)//上面的代碼示例了如何從ftp伺服器上獲得文件列表
{
return GetFileList("ftp://" + ftpServerIP + "/" + path, WebRequestMethods.Ftp.ListDirectory);
}
public string[] GetFileList()//上面的代碼示例了如何從ftp伺服器上獲得文件列表
{
return GetFileList("ftp://" + ftpServerIP + "/", WebRequestMethods.Ftp.ListDirectory);
}
public void Upload(string filename) //上面的代碼實現了從ftp伺服器上載文件的功能
{
FileInfo fileInf = new FileInfo(filename);
string uri = "ftp://" + ftpServerIP + "/" + fileInf.Name;
Connect(uri);//連接
// 默認為true,連接不會被關閉
// 在一個命令之後被執行
reqFTP.KeepAlive = false;
// 指定執行什麼命令
reqFTP.Method = WebRequestMethods.Ftp.UploadFile;
// 上傳文件時通知伺服器文件的大小
reqFTP.ContentLength = fileInf.Length;
// 緩沖大小設置為kb
int buffLength = 2048;
byte[] buff = new byte[buffLength];
int contentLen;
// 打開一個文件流(System.IO.FileStream) 去讀上傳的文件
FileStream fs = fileInf.OpenRead();
try
{
// 把上傳的文件寫入流
Stream strm = reqFTP.GetRequestStream();
// 每次讀文件流的kb
contentLen = fs.Read(buff, 0, buffLength);
// 流內容沒有結束
while (contentLen != 0)
{
// 把內容從file stream 寫入upload stream
strm.Write(buff, 0, contentLen);
contentLen = fs.Read(buff, 0, buffLength);
}
// 關閉兩個流
strm.Close();
fs.Close();
}
catch (Exception ex)
{
MessageBox.Show(ex.Message, "Upload Error");
}
}
8、winform 從伺服器下載文件夾下的所有文件
前台頁面代碼
<a href="Download.aspx?d_id=<%# Eval("id")%>" target="_blank" style="cursor:pointer;">資料</a>
Download.aspx後台代碼
protected void Page_Load(object sender, EventArgs e)
{
if ( Request.QueryString["d_id"] != null && Request.QueryString["d_DowAddress"] != "")
{
//string title = System.Web.HttpContext.Current.Request.Url.Host; //獲得當前域名
string id = Request.QueryString["d_id"].ToString();
string path = Server.MapPath ("DownloadInfo//" + id);//資料下載名稱文件路徑
sBull.downLoad(path);//查詢下載資料
}
}
9、C# WinForm 怎麼是圖片上傳到指定伺服器的文件夾中 ???
用tcp、ip協議,或者udp
或者直接調用ftp上傳文件到指定目錄
10、C# Winform 獲取WEB伺服器image文件夾下所有文件名?
你winform怎麼能有許可權直接去訪問伺服器的文件夾啊 ? 用webservie或者WCF 吧