public Boolean DeletePack(int v) { // 输出递交包,到本地集成环境处理,需要使用ftp连接 FTPConnection ftp = MAConf.instance.Configs[ProductId].ftp; FtpConf fc = MAConf.instance.Configs[ProductId].fc; // 强制重新连接,防止时间长了就断掉了 if (ftp.IsConnected == false) { try { ftp.Connect(); } catch (Exception e) { log.WriteErrorLog("连接FTP服务器失败,错误信息:" + e.Message); } } if (ftp.DirectoryExists(RemoteDir) == false) { System.Windows.Forms.MessageBox.Show("FTP路径" + RemoteDir + "不存在!"); return(false); } //ftp.ChangeWorkingDirectory(fc.ServerDir); ftp.DeleteFile(RemoteFile); return(true); }
private static void DeleteDirectoryRecursively(FTPConnection ftpConnect, string remotePath) { ftpConnect.ChangeWorkingDirectory(remotePath); var files = ftpConnect.GetFileInfos().Where(x => !x.Name.Contains(".") || x.Name.Contains("jpg")); foreach (var tmp in files) { if (!tmp.Dir) { ftpConnect.DeleteFile(tmp.Name); } } // delete all subdirectories in the remotePath directory foreach (var tmp in files) { if (tmp.Dir) { DeleteDirectoryRecursively(ftpConnect, tmp.Name); } } // delete this directory ftpConnect.ChangeWorkingDirectoryUp(); ftpConnect.DeleteDirectory(remotePath); }
/// <summary> /// /// </summary> /// <param name="ip"></param> public void testServer(string ip) { FTPConnection ftp = new FTPConnection(); string current = "setup"; try { Console.Out.WriteLine("Testing: " + ip); ftp.ServerAddress = ip; ftp.UserName = "******"; ftp.Password = "******"; ftp.Timeout = 5000; current = "connecting"; ftp.Connect(); current = "uploading"; ftp.UploadFile("test.txt", "test.txt"); current = "testing"; if (ftp.Exists("test.txt")) { current = "deleting"; ftp.DeleteFile("test.txt"); Console.WriteLine("OK: " + ip, Color.Lime); okservers++; goodServers.Add(ip); using (StreamWriter w = File.AppendText(outputFile)) { w.WriteLine(ip); } } else { throw new Exception("File could not be uploaded" + ip); } ftp.DeleteFile("test.txt"); } catch (Exception ex) { Console.WriteLine("Error: " + current + " " + ex.Message); } finally { current = "closing"; ftp.Close(); } }
public override void Delete(IDirectoryViewItem toDelete) { if (toDelete.IsDirectory) { connection.DeleteDirectory(toDelete.FullName); } else { connection.DeleteFile(toDelete.FullName); } }
/// <summary>Transfer back and forth multiple times</summary> internal override void BulkTransfer(string localFile) { // put to a random filename muliple times string filename = GenerateRandomFilename(); log.Debug("Bulk transfer count=" + bulkCount); for (int i = 0; i < bulkCount; i++) { ftp.UploadFile(localDataDir + localFile, filename); // get it back ftp.DownloadFile(localDataDir + filename, filename); } // delete remote file ftp.DeleteFile(filename); // check equality of local files AssertIdentical(localDataDir + localFile, localDataDir + filename); // and delete local file FileInfo local = new FileInfo(localDataDir + filename); local.Delete(); }
/// <summary> /// 删除文件,删除前确保文件存在 /// </summary> /// <param name="fileName"></param> /// <param name="connection"></param> /// <returns></returns> private bool DeleteFile(string fileName, FTPConnection connection) { return(connection.DeleteFile(fileName)); }
/// <summary> /// 在 FTP 服务器上删除一个文件 /// </summary> /// <param name="path"></param> public void DeleteFile(string path) { m_pFtp.DeleteFile("/" + path.TrimStart('/')); }