/// <summary> /// 执行 /// </summary> /// <returns></returns> public override bool Do() { var reader = new IoParamReader(this.OperationInfo.ParamFilePath); foreach (var item in reader) { this.CurrentParam = item; if (File.Exists(item.OutputPath)) { if (item.IsOverwrite) { var Message = "文件(夹)已存在,即将覆盖 " + item.OutputPath; this.OnStatedMessageProduced(StatedMessage.GetProcessing(Message)); } else { var Message = "文件(夹)已存在,复制操作取消 " + item.OutputPath; this.OnStatedMessageProduced(StatedMessage.GetProcessing(Message)); } } if (Geo.Utils.FileUtil.CopyFileOrDirectory(item.InputPath, item.OutputPath, item.IsOverwrite)) { var Message = "已复制 " + item.InputPath + " 到 " + item.OutputPath; this.OnStatedMessageProduced(StatedMessage.GetProcessing(Message)); } } return(true); }
/// <summary> /// 执行 /// </summary> /// <returns></returns> public override bool Do() { var reader = new DecompressParamReader(this.OperationInfo.ParamFilePath); foreach (var item in reader) { this.CurrentParam = item; Geo.Utils.CompressUtil.DecompressZ(item.InputPath, item.OutputPath, item.IsDeleteSource, item.IsOverwrite); var Message = "解压 " + item.InputPath + " 到 " + item.OutputPath; this.OnStatedMessageProduced(StatedMessage.GetProcessing(Message)); } return(true); }
/// <summary> /// 转换 /// </summary> /// <param name="fileInPath">输入文件路径</param> /// <param name="fileOutPath">输出文件路径</param> /// <param name="isOverwrite"></param> protected void CheckOrExecute(Baseline fileInPath, string fileOutPath, bool isOverwrite) { if (File.Exists(fileOutPath)) { if (isOverwrite) { var Message = "文件" + fileOutPath + "已存在,即将覆盖 "; this.OnStatedMessageProduced(StatedMessage.GetProcessing(Message)); Execute(fileInPath, fileOutPath); } else { var Message = "文件" + fileOutPath + "已存在,操作取消 "; this.OnStatedMessageProduced(StatedMessage.GetProcessing(Message)); } } else { var Message = "正在处理 " + fileInPath + " 到 " + fileOutPath; this.OnStatedMessageProduced(StatedMessage.GetProcessing(Message)); Execute(fileInPath, fileOutPath); } }