/// <summary> /// Crea el directorio de forma recursiva /// </summary> public bool MakeDirRecursive(string newPath) { bool made = true; // ... supone que se crea correctamente // Crea recursivamente los directorios if (!string.IsNullOrEmpty(newPath)) { string actualPath = GetActualPath(); string[] newPathParts = newPath.Split('/'); FtpPath path = ""; // Recorre los directorios for (int index = 0; index < newPathParts.Length && made; index++) { // Añade el subdirectorio path += newPathParts[index]; // Crea el directorio if (path.ToString() != "/") // ... porque en la cadena inicial había una / al comienzo { // Crea el directorio MakeDir(path.ToString()); // Pasa al directorio creado (si puede) made = ChangeDir(path.ToString()); } } // Vuelve al directorio inicial ChangeDir(actualPath); } // Devuelve el valor que indica si se ha creado return(made); }
public FtpEntry(FtpPath path, long size, FtpEntryType type, DateTime date, FtpPath target) { Path = path; Name = path.GetFileName(); Date = date; Type = type; Target = target; Size = size; }
public FtpEntry(FtpPath parent, string name, long size, FtpEntryType type, DateTime date, FtpPath target) { if (parent != null) { Path = parent + name; } Name = name; Date = date; Type = type; Target = target; Size = size; }
/// <summary> /// Borra un directorio /// </summary> public bool RemoveDirectory(FtpPath path) { return(new FtpDeleteCommand(Client.Connection, path, true).Send().IsSuccess); }
/// <summary> /// Borra un archivo o directorio /// </summary> public bool Delete(FtpPath path) { return(new FtpDeleteCommand(Client.Connection, path, null).Send().IsSuccess); }