0 Entesar Khaled نشر 10 مايو 2019 أرسل تقرير نشر 10 مايو 2019 أهلًا بك، يمكنك حذف نص محدد من ملف نصي بلغة الجافا من خلال البرنامج التالي وحسب الشرح في الصورة import java.io.*; public class FileOperation { public static void main(String[] args) throws IOException { // PrintWriter object for output.txt PrintWriter pw = new PrintWriter("output.txt"); // BufferedReader object for input.txt BufferedReader br1 = new BufferedReader(new FileReader("input.txt")); String line1 = br1.readLine(); // loop for each line of input.txt while(line1 != null) { boolean flag = false; // BufferedReader object for delete.txt BufferedReader br2 = new BufferedReader(new FileReader("delete.txt")); String line2 = br2.readLine(); // loop for each line of delete.txt while(line2 != null) { if(line1.equals(line2)) { flag = true; break; } line2 = br2.readLine(); } // if flag = false // write line of input.txt to output.txt if(!flag) pw.println(line1); line1 = br1.readLine(); } pw.flush(); // closing resources br1.close(); pw.close(); System.out.println("File operation performed successfully"); } } مصدر موقع geeksforgeeks اقتباس
0 Ali Haidar Ahmad نشر 31 أغسطس 2021 أرسل تقرير نشر 31 أغسطس 2021 يمكنك استخدام الدالة replaceAll: public String replaceAll(String regex, String replacement) تقبل هذه الدالة تعبيراً منتظماً "regular expression(regex)" و سلسلة نصية String كوسطاء. حيث تستخدم هذه الدالة للبحث في الـ String الذي قام باستدعائها عن Substring ما لتبديله بنص جديد. حيث أننا نضع مكان الباراميتر regex نص يمثل النص الذي نريد استبداله. ومكان الباراميتر replacement نمرر النص الذي سيحل مكانه. وكلما تم إيجاد نفس قيمة الباراميتر regex سيتم إستبدالها بقيمة الباراميتر replacement. مثال عن هذه الدالة: public class MyClass { public static void main(String args[]) { String str = "casd bla bla bla daerve "; System.out.println( str.replaceAll("bla bla bla", "") ); // :الخرج سيكون //casd daerve } } الآن لحذف سلسلة معينة من ملف باستخدام طريقة replaceAll نتبع مايلي: أولاً: نقوم بتحميل محتويات الملف كسلسلة String. ثانياً: نقوم باستبدل الكلمة المطلوبة (أو الكلمات أو ال substring) بسلسلة فارغة باستخدام replaceAll. ثالثاً: أعد كتابة السلسلة الناتجة في الملف مرة أخرى. كالتالي: import java.io.PrintWriter; import java.util.Scanner; import java.io.File; import java.io.FileNotFoundException; public class StringExample { //string يقرأ الملف كسلسلة نصية fileToString نعرف تابع public static String ReadFileAsString(String Path) throws Exception{ Scanner in = new Scanner(new File(Path)); StringBuffer myfile = new StringBuffer(); String read = null; //myfile نبدأ الآن بقراءة الملف وتخزين محتوياته في while (in.hasNextLine()) { read = sc.nextLine(); myfile.append(read); } return myfile.toString(); } // الآن سنطبق خطوتي الحذف والكتابة فوق الملف الأصلي لتعديل محتواه public static void main(String args[]) throws FileNotFoundException { // نضع مسار الملف String Path = "f.txt"; // نمرره للدالة السابقة String file = ReadFileAsString(Path); // الحذف file = file.replaceAll("\\b نضع مانريد حذفه هنا \\b", ""); // نعيد كتابة الملف من جديد بعد التعديل PrintWriter wr = new PrintWriter(new File(Path)); wr.append(file); wr.flush(); // يمكننا الآن عرض محتوياته بعد التعديل كالتالي System.out.println(ReadFileAsString(Path)); } } اقتباس
السؤال
Feras Awwad
كود حذف نص من ملف
2 أجوبة على هذا السؤال
Recommended Posts
انضم إلى النقاش
يمكنك أن تنشر الآن وتسجل لاحقًا. إذا كان لديك حساب، فسجل الدخول الآن لتنشر باسم حسابك.