حذف ملف / مجلد من خادم FTP في Java

لحذف ملف موجود في خادم FTP باستخدام Apache Commons Net API ، يمكن للمرء استخدام الطريقة deleteFile ()< / span> من نمط FTPClient< / span>:

حذف منطقي عام (اسم مسار السلسلة) يلقي IOException: < / span>  ستصدر هذه الطريقة أمرا إلى خادم FTP يحذف مسار الملف البعيد المحدد في المعلمة اسم المسار< / الامتداد >. ترجع هذه الطريقة true إذا تم حذف الملف البعيد بنجاح، وإلا فخطأ إذا كان الملف غير موجود أو كان دليلا. تثير هذه الطريقة استثناء FTPConnectionClosedException في حالة إغلاق الاتصال بالخادم حاليا ، أو IOException في حالة حدوث خطأ في القراءة/الكتابة أثناء الاتصال بالخادم.

لاستخدام واجهة برمجة تطبيقات Apache Commons Net ، يجب عليك تنزيلها من  http://commons.apache.org/net/download_net.cgi< / أ >  وأضف ملف .jar إلى نمط classpath< / span>.

لتوضيح فائدة نمط deleteFile () < / span> ، سنعمل مع مثال على ذلك:
  • تسجيل الدخول إلى خادم FTP.
  • حذف الملف الموجود على server.
  • قطع الاتصال بالخادم.
فيما يلي مثال على كيفية استخدام نمط deleteFile ()< / span>:

< pre class = "prettyprint lang-java" >import java.io.IOException ؛
import org.apache.commons.net.ftp.FTPClient;
import org.apache.commons.net.ftp.FTPReply;

العامة فئة deleteFileFTP {

الفراغ العام الثابت الرئيسي (سلسلة [] args) {
خادم السلسلة = "اسم الخادم أو عنوانه" ؛
int port = 21 ؛
اسم مستخدم السلسلة = "اسم المستخدم" ؛
كلمة مرور السلسلة = "كلمة المرور" ؛

FTPClient ftpClient = FTPClient الجديد () ؛
جرب {

ftpClient.connect (الخادم ، المنفذ) ؛

int response = ftpClient.getReplyCode ();
if (! FTPReply.isPositiveCompletion (answer)) {
System.out.println ("فشل الاتصال") ؛ < br / > العودة ؛
}

الدقة المنطقية = ftpClient.login (اسم المستخدم ، كلمة المرور) ؛

if (res==false) {
System.out.println ("فشل تحديد الخادم"); < br / > العودة ؛
}
ملف سلسلة ToDelete = "/ موسيقى / Symphonie.wma" ؛

منطقي isDeleted = ftpClient.deleteFile (fileToDelete);

if (isDelete==true) {
System.out.println ("تم حذف الملف بنجاح");
} آخر {
System.out.println("تعذر حذف الملف");
}
} catch (IOException ex) {
System.out.println(ex.getMessage());
على سبيل المثال printStackTrace ();
} أخيرا {
// قطع الاتصال بالخادم
حاول {
إذا كان (ftpClient.isConnected()) {
ftpClient.logout();
ftpClient.disconnect();
}
} الصيد (IOException ex) {
ex.printStackTrace ();
}
}
}
}
< / pre> بعد تجميع البرنامج وتشغيله ، تعرض المحطة أن الحذف كان ناجحا:

تم حذف الملف بنجاح