锐腾搅拌上料功能
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

695 lines
26 KiB

5 months ago
  1. using System;
  2. using System.Collections.Generic;
  3. using System.Text;
  4. using System.IO;
  5. using System.Net;
  6. using System.Windows.Forms;
  7. using System.Globalization;
  8. namespace ICSSoft.Frame.APP
  9. {
  10. public class FtpWeb
  11. {
  12. string ftpServerIP;
  13. string ftpRemotePath;
  14. string ftpUserID;
  15. string ftpPassword;
  16. string ftpURI;
  17. /// <summary>
  18. /// 连接FTP
  19. /// </summary>
  20. /// <param name="FtpServerIP">FTP连接地址</param>
  21. /// <param name="FtpRemotePath">指定FTP连接成功后的当前目录, 如果不指定即默认为根目录</param>
  22. /// <param name="FtpUserID">用户名</param>
  23. /// <param name="FtpPassword">密码</param>
  24. public FtpWeb(string FtpServerIP, string FtpRemotePath, string FtpUserID, string FtpPassword)
  25. {
  26. ftpServerIP = FtpServerIP;
  27. ftpRemotePath = FtpRemotePath;
  28. ftpUserID = FtpUserID;
  29. ftpPassword = FtpPassword;
  30. ftpURI = "ftp://" + ftpServerIP + "/" + ftpRemotePath + "/";
  31. }
  32. /// <summary>
  33. /// 连接FTP
  34. /// </summary>
  35. /// <param name="FtpServerIP">FTP连接地址</param>
  36. /// <param name="FtpRemotePath">指定FTP连接成功后的当前目录, 如果不指定即默认为根目录</param>
  37. /// <param name="FtpUserID">用户名</param>
  38. /// <param name="FtpPassword">密码</param>
  39. public FtpWeb(string FtpURI, string FtpUserID, string FtpPassword)
  40. {
  41. ftpServerIP = "";
  42. ftpRemotePath = "";
  43. ftpUserID = FtpUserID;
  44. ftpPassword = FtpPassword;
  45. ftpURI = "ftp://" + FtpURI;
  46. }
  47. /// <summary>
  48. /// 上传
  49. /// </summary>
  50. /// <param name="filename"></param>
  51. public void Upload(string filename, long hid, string imgPath)
  52. {
  53. if (!File.Exists(filename))
  54. {
  55. return;
  56. }
  57. FileInfo fileInf = new FileInfo(filename);
  58. string uri = ftpURI + imgPath + fileInf.Name;
  59. FtpWebRequest reqFTP;
  60. reqFTP = (FtpWebRequest)FtpWebRequest.Create(new Uri(uri));
  61. reqFTP.Credentials = new NetworkCredential(ftpUserID, ftpPassword);
  62. reqFTP.KeepAlive = false;
  63. reqFTP.Method = WebRequestMethods.Ftp.UploadFile;
  64. reqFTP.UseBinary = true;
  65. reqFTP.ContentLength = fileInf.Length;
  66. int buffLength = 2048;
  67. byte[] buff = new byte[buffLength];
  68. int contentLen;
  69. FileStream fs = fileInf.OpenRead();
  70. try
  71. {
  72. Stream strm = reqFTP.GetRequestStream();
  73. contentLen = fs.Read(buff, 0, buffLength);
  74. while (contentLen != 0)
  75. {
  76. strm.Write(buff, 0, contentLen);
  77. contentLen = fs.Read(buff, 0, buffLength);
  78. }
  79. strm.Close();
  80. fs.Close();
  81. }
  82. catch (Exception ex)
  83. {
  84. Insert_Standard_ErrorLog.Insert("FtpWeb", "Upload Error --> " + ex.Message);
  85. }
  86. }
  87. public void Upload(string filePath,string file, string filename)
  88. {
  89. bool b = FileExist(file);
  90. if(!b){
  91. MakeDir(file);
  92. }
  93. string type = filePath.Substring(filePath.IndexOf("."));
  94. FileInfo fileInf = new FileInfo(filePath);
  95. string uri = ftpURI + file + "/" + filename + ".pdf";
  96. FtpWebRequest reqFTP;
  97. reqFTP = (FtpWebRequest)FtpWebRequest.Create(new Uri(uri));
  98. reqFTP.Credentials = new NetworkCredential(ftpUserID, ftpPassword);
  99. reqFTP.KeepAlive = false;
  100. reqFTP.Method = WebRequestMethods.Ftp.UploadFile;
  101. reqFTP.UseBinary = true;
  102. reqFTP.ContentLength = fileInf.Length;
  103. int buffLength = 2048;
  104. byte[] buff = new byte[buffLength];
  105. int contentLen;
  106. FileStream fs = fileInf.OpenRead();
  107. try
  108. {
  109. Stream strm = reqFTP.GetRequestStream();
  110. contentLen = fs.Read(buff, 0, buffLength);
  111. while (contentLen != 0)
  112. {
  113. strm.Write(buff, 0, contentLen);
  114. contentLen = fs.Read(buff, 0, buffLength);
  115. }
  116. strm.Close();
  117. fs.Close();
  118. }
  119. catch (Exception ex)
  120. {
  121. Insert_Standard_ErrorLog.Insert("FtpWeb", "Upload Error --> " + ex.Message);
  122. }
  123. }
  124. /// <summary>
  125. /// 下载
  126. /// </summary>
  127. /// <param name="filePath"></param>
  128. /// <param name="fileName"></param>
  129. public void Download(string filePath, string fileName)
  130. {
  131. FtpWebRequest reqFTP;
  132. try
  133. {
  134. FileStream outputStream = new FileStream(filePath + "\\" + fileName, FileMode.Create);
  135. reqFTP = (FtpWebRequest)FtpWebRequest.Create(new Uri(ftpURI + fileName));
  136. reqFTP.Method = WebRequestMethods.Ftp.DownloadFile;
  137. reqFTP.UseBinary = true;
  138. reqFTP.Credentials = new NetworkCredential(ftpUserID, ftpPassword);
  139. FtpWebResponse response = (FtpWebResponse)reqFTP.GetResponse();
  140. Stream ftpStream = response.GetResponseStream();
  141. long cl = response.ContentLength;
  142. int bufferSize = 2048;
  143. int readCount;
  144. byte[] buffer = new byte[bufferSize];
  145. readCount = ftpStream.Read(buffer, 0, bufferSize);
  146. while (readCount > 0)
  147. {
  148. outputStream.Write(buffer, 0, readCount);
  149. readCount = ftpStream.Read(buffer, 0, bufferSize);
  150. }
  151. ftpStream.Close();
  152. outputStream.Close();
  153. response.Close();
  154. }
  155. catch (Exception ex)
  156. {
  157. Insert_Standard_ErrorLog.Insert("FtpWeb", "Download Error --> " + ex.Message);
  158. }
  159. }
  160. public void Download(string filePath, string fileName,string file)
  161. {
  162. FtpWebRequest reqFTP;
  163. try
  164. {
  165. FileStream outputStream = new FileStream(filePath + "\\" + fileName, FileMode.Create);
  166. reqFTP = (FtpWebRequest)FtpWebRequest.Create(new Uri(ftpURI + file + "/" + fileName));
  167. reqFTP.Method = WebRequestMethods.Ftp.DownloadFile;
  168. reqFTP.UseBinary = true;
  169. reqFTP.Credentials = new NetworkCredential(ftpUserID, ftpPassword);
  170. FtpWebResponse response = (FtpWebResponse)reqFTP.GetResponse();
  171. Stream ftpStream = response.GetResponseStream();
  172. long cl = response.ContentLength;
  173. int bufferSize = 2048;
  174. int readCount;
  175. byte[] buffer = new byte[bufferSize];
  176. readCount = ftpStream.Read(buffer, 0, bufferSize);
  177. while (readCount > 0)
  178. {
  179. outputStream.Write(buffer, 0, readCount);
  180. readCount = ftpStream.Read(buffer, 0, bufferSize);
  181. }
  182. ftpStream.Close();
  183. outputStream.Close();
  184. response.Close();
  185. }
  186. catch (Exception ex)
  187. {
  188. Insert_Standard_ErrorLog.Insert("FtpWeb", "Download Error --> " + ex.Message);
  189. }
  190. }
  191. public void Upload(string filename, long hid)
  192. {
  193. FileInfo fileInf = new FileInfo(filename);
  194. string uri = ftpURI + hid.ToString() + ".jpg";
  195. FtpWebRequest reqFTP;
  196. reqFTP = (FtpWebRequest)FtpWebRequest.Create(new Uri(uri));
  197. reqFTP.Credentials = new NetworkCredential(ftpUserID, ftpPassword);
  198. reqFTP.KeepAlive = false;
  199. reqFTP.Method = WebRequestMethods.Ftp.UploadFile;
  200. reqFTP.UseBinary = true;
  201. reqFTP.ContentLength = fileInf.Length;
  202. int buffLength = 2048;
  203. byte[] buff = new byte[buffLength];
  204. int contentLen;
  205. FileStream fs = fileInf.OpenRead();
  206. try
  207. {
  208. Stream strm = reqFTP.GetRequestStream();
  209. contentLen = fs.Read(buff, 0, buffLength);
  210. while (contentLen != 0)
  211. {
  212. strm.Write(buff, 0, contentLen);
  213. contentLen = fs.Read(buff, 0, buffLength);
  214. }
  215. strm.Close();
  216. fs.Close();
  217. }
  218. catch (Exception ex)
  219. {
  220. Insert_Standard_ErrorLog.Insert("FtpWeb", "Upload Error --> " + ex.Message);
  221. }
  222. }
  223. /// <summary>
  224. /// 删除文件
  225. /// </summary>
  226. /// <param name="fileName"></param>
  227. public void Delete(string fileName)
  228. {
  229. try
  230. {
  231. string uri = ftpURI + fileName;
  232. FtpWebRequest reqFTP;
  233. reqFTP = (FtpWebRequest)FtpWebRequest.Create(new Uri(uri));
  234. reqFTP.Credentials = new NetworkCredential(ftpUserID, ftpPassword);
  235. reqFTP.KeepAlive = false;
  236. reqFTP.Method = WebRequestMethods.Ftp.DeleteFile;
  237. string result = String.Empty;
  238. FtpWebResponse response = (FtpWebResponse)reqFTP.GetResponse();
  239. long size = response.ContentLength;
  240. Stream datastream = response.GetResponseStream();
  241. StreamReader sr = new StreamReader(datastream);
  242. result = sr.ReadToEnd();
  243. sr.Close();
  244. datastream.Close();
  245. response.Close();
  246. }
  247. catch (Exception ex)
  248. {
  249. Insert_Standard_ErrorLog.Insert("FtpWeb", "Delete Error --> " + ex.Message + " 文件名:" + fileName);
  250. }
  251. }
  252. public void Delete(string folderName, string fileName)
  253. {
  254. try
  255. {
  256. string uri = ftpURI + folderName + "/" + fileName;
  257. FtpWebRequest reqFTP;
  258. reqFTP = (FtpWebRequest)FtpWebRequest.Create(new Uri(uri));
  259. reqFTP.Credentials = new NetworkCredential(ftpUserID, ftpPassword);
  260. reqFTP.KeepAlive = false;
  261. reqFTP.Method = WebRequestMethods.Ftp.DeleteFile;
  262. string result = String.Empty;
  263. FtpWebResponse response = (FtpWebResponse)reqFTP.GetResponse();
  264. long size = response.ContentLength;
  265. Stream datastream = response.GetResponseStream();
  266. StreamReader sr = new StreamReader(datastream);
  267. result = sr.ReadToEnd();
  268. sr.Close();
  269. datastream.Close();
  270. response.Close();
  271. }
  272. catch (Exception ex)
  273. {
  274. Insert_Standard_ErrorLog.Insert("FtpWeb", "Delete Error --> " + ex.Message + " 文件名:" + fileName);
  275. }
  276. }
  277. /// <summary>
  278. /// 删除文件夹
  279. /// </summary>
  280. /// <param name="folderName"></param>
  281. public void RemoveDirectory(string folderName)
  282. {
  283. try
  284. {
  285. string uri = ftpURI + folderName;
  286. FtpWebRequest reqFTP;
  287. reqFTP = (FtpWebRequest)FtpWebRequest.Create(new Uri(uri));
  288. reqFTP.Credentials = new NetworkCredential(ftpUserID, ftpPassword);
  289. reqFTP.KeepAlive = false;
  290. reqFTP.Method = WebRequestMethods.Ftp.RemoveDirectory;
  291. string result = String.Empty;
  292. FtpWebResponse response = (FtpWebResponse)reqFTP.GetResponse();
  293. long size = response.ContentLength;
  294. Stream datastream = response.GetResponseStream();
  295. StreamReader sr = new StreamReader(datastream);
  296. result = sr.ReadToEnd();
  297. sr.Close();
  298. datastream.Close();
  299. response.Close();
  300. }
  301. catch (Exception ex)
  302. {
  303. Insert_Standard_ErrorLog.Insert("FtpWeb", "Delete Error --> " + ex.Message + " 文件名:" + folderName);
  304. }
  305. }
  306. /// <summary>
  307. /// 获取当前目录下明细(包含文件和文件夹)
  308. /// </summary>
  309. /// <returns></returns>
  310. public string[] GetFilesDetailList()
  311. {
  312. string[] downloadFiles;
  313. try
  314. {
  315. StringBuilder result = new StringBuilder();
  316. FtpWebRequest ftp;
  317. ftp = (FtpWebRequest)FtpWebRequest.Create(new Uri(ftpURI));
  318. ftp.Credentials = new NetworkCredential(ftpUserID, ftpPassword);
  319. ftp.Method = WebRequestMethods.Ftp.ListDirectoryDetails;
  320. WebResponse response = ftp.GetResponse();
  321. Encoding encode = Encoding.GetEncoding("GB2312");//转换中文
  322. //StreamReader reader = new StreamReader(response.GetResponseStream(), Encoding.Default);
  323. StreamReader reader = new StreamReader(response.GetResponseStream(), encode);
  324. //while (reader.Read() > 0)
  325. //{
  326. //}
  327. string line = reader.ReadLine();
  328. while (line != null)
  329. {
  330. result.Append(line);
  331. result.Append("\n");
  332. line = reader.ReadLine();
  333. }
  334. result.Remove(result.ToString().LastIndexOf("\n"), 1);
  335. reader.Close();
  336. response.Close();
  337. return result.ToString().Split('\n');
  338. }
  339. catch (Exception ex)
  340. {
  341. downloadFiles = null;
  342. Insert_Standard_ErrorLog.Insert("FtpWeb", "GetFilesDetailList Error --> " + ex.Message);
  343. return downloadFiles;
  344. }
  345. }
  346. /// <summary>
  347. /// 获取当前目录下文件列表(仅文件)
  348. /// </summary>
  349. /// <returns></returns>
  350. public string[] GetFileList(string mask)
  351. {
  352. string[] downloadFiles;
  353. StringBuilder result = new StringBuilder();
  354. FtpWebRequest reqFTP;
  355. try
  356. {
  357. reqFTP = (FtpWebRequest)FtpWebRequest.Create(new Uri(ftpURI + mask));
  358. mask = "*.*";
  359. reqFTP.UseBinary = true;
  360. reqFTP.Credentials = new NetworkCredential(ftpUserID, ftpPassword);
  361. reqFTP.Method = WebRequestMethods.Ftp.ListDirectory;
  362. WebResponse response = reqFTP.GetResponse();
  363. Encoding encode = Encoding.GetEncoding("GB2312");//转换中文
  364. StreamReader reader = new StreamReader(response.GetResponseStream(), encode);
  365. ///StreamReader reader = new StreamReader(response.GetResponseStream(), Encoding.Default);
  366. string line = reader.ReadLine();
  367. while (line != null)
  368. {
  369. if (mask.Trim() != string.Empty && mask.Trim() != "*.*")
  370. {
  371. //string mask_ = mask.Substring(0, mask.IndexOf("*"));
  372. //if (line.Substring(0, mask_.Length) == mask_)
  373. //{
  374. // result.Append(line);
  375. // result.Append("\n");
  376. //}
  377. if (line.Contains(mask))
  378. {
  379. result.Append(line);
  380. result.Append("\n");
  381. }
  382. }
  383. else
  384. {
  385. result.Append(line);
  386. result.Append("\n");
  387. }
  388. line = reader.ReadLine();
  389. }
  390. if (result.Length > 0) result.Remove(result.ToString().LastIndexOf('\n'), 1);
  391. reader.Close();
  392. response.Close();
  393. return result.ToString().Split('\n');
  394. }
  395. catch (Exception ex)
  396. {
  397. downloadFiles = null;
  398. if (ex.Message.Trim() != "远程服务器返回错误: (550) 文件不可用(例如,未找到文件,无法访问文件)。")
  399. {
  400. Insert_Standard_ErrorLog.Insert("FtpWeb", "GetFileList Error --> " + ex.Message.ToString());
  401. }
  402. return downloadFiles;
  403. }
  404. }
  405. /// <summary>
  406. /// 获取当前目录下所有的文件夹列表(仅文件夹)
  407. /// </summary>
  408. /// <returns></returns>
  409. public string[] GetDirectoryList()
  410. {
  411. string[] drectory = GetFilesDetailList();
  412. string m = string.Empty;
  413. foreach (string str in drectory)
  414. {
  415. int dirPos = str.IndexOf("<DIR>");
  416. if (dirPos > 0)
  417. {
  418. /*判断 Windows 风格*/
  419. m += str.Substring(dirPos + 5).Trim() + "\n";
  420. }
  421. else if (str.Trim().Substring(0, 1).ToUpper() == "D")
  422. {
  423. /*判断 Unix 风格*/
  424. string dir = str.Substring(54).Trim();
  425. if (dir != "." && dir != "..")
  426. {
  427. m += dir + "\n";
  428. }
  429. }
  430. }
  431. char[] n = new char[] { '\n' };
  432. return m.Split(n);
  433. }
  434. /// <summary>
  435. /// 判断当前目录下指定的子目录是否存在
  436. /// </summary>
  437. /// <param name="RemoteDirectoryName">指定的目录名</param>
  438. public bool DirectoryExist(string RemoteDirectoryName)
  439. {
  440. string[] dirList = GetDirectoryList();
  441. foreach (string str in dirList)
  442. {
  443. if (str.Trim() == RemoteDirectoryName.Trim())
  444. {
  445. return true;
  446. }
  447. }
  448. return false;
  449. }
  450. /// <summary>
  451. /// 判断当前目录下指定的文件是否存在
  452. /// </summary>
  453. /// <param name="RemoteFileName">远程文件名</param>
  454. public bool FileExist(string RemoteFileName)
  455. {
  456. string[] fileList = GetFileList("*.*");
  457. //if (fileList == null)
  458. // return false;
  459. foreach (string str in fileList)
  460. {
  461. if (str.Trim() == RemoteFileName.Trim())
  462. {
  463. return true;
  464. }
  465. }
  466. return false;
  467. }
  468. /// <summary>
  469. /// 创建文件夹
  470. /// </summary>
  471. /// <param name="dirName"></param>
  472. public void MakeDir(string dirName)
  473. {
  474. FtpWebRequest reqFTP;
  475. try
  476. {
  477. // dirName = name of the directory to create.
  478. if (Directory.Exists(ftpURI + dirName))
  479. {
  480. return;
  481. }
  482. reqFTP = (FtpWebRequest)FtpWebRequest.Create(new Uri(ftpURI + dirName));
  483. reqFTP.Method = WebRequestMethods.Ftp.MakeDirectory;
  484. reqFTP.KeepAlive = false;
  485. reqFTP.UsePassive = true;
  486. reqFTP.UseBinary = true;
  487. reqFTP.Credentials = new NetworkCredential(ftpUserID, ftpPassword);
  488. FtpWebResponse response = (FtpWebResponse)reqFTP.GetResponse();
  489. Stream ftpStream = response.GetResponseStream();
  490. ftpStream.Close();
  491. response.Close();
  492. }
  493. catch (Exception ex)
  494. {
  495. Insert_Standard_ErrorLog.Insert("FtpWeb", "MakeDir Error --> " + ex.Message);
  496. }
  497. }
  498. /// <summary>
  499. /// 获取指定文件大小
  500. /// </summary>
  501. /// <param name="filename"></param>
  502. /// <returns></returns>
  503. public long GetFileSize(string filename)
  504. {
  505. FtpWebRequest reqFTP;
  506. long fileSize = 0;
  507. try
  508. {
  509. reqFTP = (FtpWebRequest)FtpWebRequest.Create(new Uri(ftpURI + filename));
  510. reqFTP.Method = WebRequestMethods.Ftp.GetFileSize;
  511. reqFTP.UseBinary = true;
  512. reqFTP.Credentials = new NetworkCredential(ftpUserID, ftpPassword);
  513. FtpWebResponse response = (FtpWebResponse)reqFTP.GetResponse();
  514. Stream ftpStream = response.GetResponseStream();
  515. fileSize = response.ContentLength;
  516. ftpStream.Close();
  517. response.Close();
  518. }
  519. catch (Exception ex)
  520. {
  521. Insert_Standard_ErrorLog.Insert("FtpWeb", "GetFileSize Error --> " + ex.Message);
  522. }
  523. return fileSize;
  524. }
  525. /// <summary>
  526. /// 改名
  527. /// </summary>
  528. /// <param name="currentFilename"></param>
  529. /// <param name="newFilename"></param>
  530. public void ReName(string currentFilename, string newFilename)
  531. {
  532. FtpWebRequest reqFTP;
  533. try
  534. {
  535. reqFTP = (FtpWebRequest)FtpWebRequest.Create(new Uri(ftpURI + currentFilename));
  536. reqFTP.Method = WebRequestMethods.Ftp.Rename;
  537. reqFTP.RenameTo = newFilename;
  538. reqFTP.UseBinary = true;
  539. reqFTP.Credentials = new NetworkCredential(ftpUserID, ftpPassword);
  540. FtpWebResponse response = (FtpWebResponse)reqFTP.GetResponse();
  541. Stream ftpStream = response.GetResponseStream();
  542. ftpStream.Close();
  543. response.Close();
  544. }
  545. catch (Exception ex)
  546. {
  547. Insert_Standard_ErrorLog.Insert("FtpWeb", "ReName Error --> " + ex.Message);
  548. }
  549. }
  550. /// <summary>
  551. /// 移动文件
  552. /// </summary>
  553. /// <param name="currentFilename"></param>
  554. /// <param name="newFilename"></param>
  555. public void MovieFile(string currentFilename, string newDirectory)
  556. {
  557. ReName(currentFilename, newDirectory);
  558. }
  559. /// <summary>
  560. /// 切换当前目录
  561. /// </summary>
  562. /// <param name="DirectoryName"></param>
  563. /// <param name="IsRoot">true 绝对路径 false 相对路径</param>
  564. public void GotoDirectory(string DirectoryName, bool IsRoot)
  565. {
  566. if (IsRoot)
  567. {
  568. ftpRemotePath = DirectoryName;
  569. }
  570. else
  571. {
  572. ftpRemotePath += DirectoryName + "/";
  573. }
  574. ftpURI = "ftp://" + ftpServerIP + "/" + ftpRemotePath + "/";
  575. }
  576. /// <summary>
  577. /// 删除订单目录
  578. /// </summary>
  579. /// <param name="ftpServerIP">FTP 主机地址</param>
  580. /// <param name="folderToDelete">FTP 用户名</param>
  581. /// <param name="ftpUserID">FTP 用户名</param>
  582. /// <param name="ftpPassword">FTP 密码</param>
  583. public static void DeleteOrderDirectory(string ftpServerIP, string folderToDelete, string ftpUserID, string ftpPassword)
  584. {
  585. try
  586. {
  587. if (!string.IsNullOrEmpty(ftpServerIP) && !string.IsNullOrEmpty(folderToDelete) && !string.IsNullOrEmpty(ftpUserID) && !string.IsNullOrEmpty(ftpPassword))
  588. {
  589. FtpWeb fw = new FtpWeb(ftpServerIP, folderToDelete, ftpUserID, ftpPassword);
  590. //进入订单目录
  591. fw.GotoDirectory(folderToDelete, true);
  592. //获取规格目录
  593. string[] folders = fw.GetDirectoryList();
  594. foreach (string folder in folders)
  595. {
  596. if (!string.IsNullOrEmpty(folder) || folder != "")
  597. {
  598. //进入订单目录
  599. string subFolder = folderToDelete + "/" + folder;
  600. fw.GotoDirectory(subFolder, true);
  601. //获取文件列表
  602. string[] files = fw.GetFileList("*.*");
  603. if (files != null)
  604. {
  605. //删除文件
  606. foreach (string file in files)
  607. {
  608. fw.Delete(file);
  609. }
  610. }
  611. //删除冲印规格文件夹
  612. fw.GotoDirectory(folderToDelete, true);
  613. fw.RemoveDirectory(folder);
  614. }
  615. }
  616. //删除订单文件夹
  617. string parentFolder = folderToDelete.Remove(folderToDelete.LastIndexOf('/'));
  618. string orderFolder = folderToDelete.Substring(folderToDelete.LastIndexOf('/') + 1);
  619. fw.GotoDirectory(parentFolder, true);
  620. fw.RemoveDirectory(orderFolder);
  621. }
  622. else
  623. {
  624. throw new Exception("FTP 及路径不能为空!");
  625. }
  626. }
  627. catch (Exception ex)
  628. {
  629. throw new Exception("删除订单时发生错误,错误信息为:" + ex.Message);
  630. }
  631. }
  632. }
  633. public class Insert_Standard_ErrorLog
  634. {
  635. public static void Insert(string x, string y)
  636. {
  637. }
  638. }
  639. }