English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
هناك أنواع عديدة من إطارات التسجيل التي يمكن استخدامها لتسجيل البيانات في الملف. يمكنك أيضًا تعريف طريقتك الخاصة. بغض النظر عن ذلك، يمكنك استخدامLocalDateTimeفئة.
إنه كائن غير قابل للتغيير يمثل تاريخ الوقت، ويخزن تاريخ الوقت كـيوم-شهر-سنة-ساعة-دقيقة-ثانية.now()
تعود طريقة هذا الكائن بتاريخ اليوم والوقت الحالي.
استخدم هذه الطريقة لربط تاريخ اليوم والوقت برسالة استثنائية الخاصة بك، وكتابتها في الملف المطلوب.
import java.io.FileOutputStream; import java.io.IOException; import java.time.LocalDateTime; import java.util.Arrays; import java.util.Scanner; public class LoggingToFile { private static void writeLogToFile(Exception e) throws IOException { FileOutputStream writer = new FileOutputStream("ExceptionLog.txt"); byte[] bytes = (LocalDateTime.now()+": "+e.toString()).getBytes(); writer.write(bytes); System.out.println("استثناءً مسجل في ملفك"); } public static void main(String [] args) throws IOException {}} Scanner sc = new Scanner(System.in); int[] arr = {10، 20، 30، 2، 0، 8}; System.out.println("المجموعة: " + Arrays.toString(arr)); System.out.println("اختر المعدل والمقابل (لا يجب أن يكون 0) من هذا المجموعة (ادخل المواضع 0 إلى 5)"); int a = sc.nextInt(); int b = sc.nextInt(); try { int result = (arr[a]) / (arr[b]); System.out.println("نتيجة " + arr[a] + "/" + arr[b] + ": " + result); catch(ArrayIndexOutOfBoundsException ex) { System.out.println("تحذير: لقد اخترت موضعًا ليس موجودًا في المجموعة"); كتابة السجل إلى الملف(ex); catch(ArithmeticException ex) { System.out.println("تحذير: لا يمكنك تقسيم عدد بأصفر"); كتابة السجل إلى الملف(ex); } } }
نتيجة الخروج
ادخل قيمتين صحيحيتين واحدة تلو الأخرى: المجموعة: [10، 20، 30، 2، 0، 8] اختر المعدل والمقابل (لا يجب أن يكون 0) من هذا المجموعة (ادخل المواضع 0 إلى 5) 1 4 تحذير: لا يمكنك تقسيم عدد بأصفر تم تسجيل الاستثناء في ملفك