البرمجة

قراءة ملف نصي وتخزين بيانات الأفلام في Java

عزيزي المبرمج الجديد،

يبدو أنك تحاول قراءة ملف نصي وتخزين بيانات الأفلام في مصفوفة من الكائنات باستخدام فئة الـ Movie التي أنشأتها. هذا خطوة جيدة في رحلتك في عالم البرمجة بلغة جافا. دعني أساعدك في فهم كيفية تنفيذ هذا العمل بطريقة صحيحة.

أولاً، دعني أشير إلى أن هناك بعض الأخطاء في الكود التي يجب تصحيحها. على سبيل المثال، اسم الفئة ليس متماشياً مع اسم الملف. يجب أن تسمي الفئة بنفس اسم الملف، لذا سنقوم بتغيير اسم الفئة من “movie” إلى “Movie” بحروف كبيرة لتتناسب مع تسمية الملف.

ثانياً، عندما تقرأ كل سطر من الملف، يجب عليك تقسيم السطر إلى عناصر منفصلة باستخدام الفواصل، ثم استخدام هذه العناصر لإنشاء كائن من نوع Movie. لذا، سنقوم بتغيير الجزء المعني من الكود ليتناسب مع هذا الأمر.

هذه الخطوات يمكن تطبيقها في كودك:

  1. فتح الملف وإعداد Scanner لقراءته.
  2. قراءة البيانات من الملف وتقسيمها إلى عناصر.
  3. استخدام هذه العناصر لإنشاء كائن Movie.
  4. تخزين كائنات Movie في مصفوفة.
  5. طباعة نتائج القراءة.

هنا مثال على كيفية تطبيق هذه الخطوات في الكود:

java
import java.io.File; import java.util.Scanner; import java.io.FileNotFoundException; public class Movie { public static void main(String[] args) throws FileNotFoundException { File myFile = new File("movieLibrary.txt"); Scanner inputFile = new Scanner(myFile); Movie_Class[] movies = new Movie_Class[100]; int index = 0; while (inputFile.hasNextLine()) { String line = inputFile.nextLine(); String[] tokens = line.split(","); int ID = Integer.parseInt(tokens[0]); String title = tokens[1]; String director = tokens[2]; String writer = tokens[3]; String duration = tokens[4]; String genre = tokens[5]; String classification = tokens[6]; String releaseDate = tokens[7]; Double rating = Double.parseDouble(tokens[8]); movies[index] = new Movie_Class(ID, title, director, writer, duration, genre, classification, releaseDate, rating); index++; } // طباعة نتائج القراءة for (int i = 0; i < index; i++) { System.out.println("Movie " + (i+1) + ":"); System.out.println("Title: " + movies[i].getMovieTitle()); System.out.println("Director: " + movies[i].getDirector()); System.out.println("Writer: " + movies[i].getWriter()); System.out.println("Duration: " + movies[i].getDuration()); System.out.println("Genre: " + movies[i].getGenre()); System.out.println("Classification: " + movies[i].getClassification()); System.out.println("Release Date: " + movies[i].getReleaseDate()); System.out.println("Rating: " + movies[i].getRating()); System.out.println(); } inputFile.close(); } }

أرجو أن يساعدك هذا الكود في فهم كيفية قراءة الملف وتخزين البيانات في كائنات Movie ثم طباعة النتائج. إذا كان لديك أي أسئلة أو استفسارات إضافية، فلا تتردد في طرحها. وأتمنى لك كل التوفيق في رحلتك في تعلم لغة الجافا!

المزيد من المعلومات

بالطبع، دعنا نستكمل المقال.

بعدما قمت بتنفيذ الخطوات المذكورة في الكود السابق، ستكون قد قرأت البيانات من الملف النصي بنجاح وقمت بتخزينها في مصفوفة من كائنات الـ Movie. الآن، يمكنك استخدام هذه البيانات بحرية في برنامجك للقيام بالعديد من العمليات، مثل عرضها في واجهة المستخدم أو القيام بحسابات وتحليلات مختلفة عليها.

ومن الجيد أن تكون قد استخدمت مفهوم الكائنات (Objects) في برمجتك، فهو أحد المفاهيم الأساسية في برمجة الكائنات الموجهة (Object-Oriented Programming)، حيث يتيح لك تنظيم البيانات والعمليات المتعلقة بها في كائن متكامل.

بالطبع، يمكنك أيضًا تطوير البرنامج بشكل أكبر من خلال إضافة ميزات جديدة أو تعديل الأمور الحالية. مثلاً، يمكنك إنشاء وظيفة للبحث في مكتبة الأفلام بناءً على عناصر معينة مثل العنوان أو التصنيف، أو حتى إضافة وظيفة لإضافة أفلام جديدة إلى المكتبة.

هناك العديد من الأفكار التي يمكن تطبيقها، وتوجيه برمجيتك نحو تلبية احتياجات محددة. إذا كنت مهتماً بتطوير المزيد، فقم بالبحث عن مفاهيم جديدة وتقنيات متقدمة في لغة الجافا، واستمر في العمل على مشاريعك البرمجية.

في النهاية، أود أن أشجعك على التواصل مع مجتمعات البرمجة عبر الإنترنت، حيث يمكنك أن تجد دعماً ومساعدة من المطورين الآخرين، وتتعلم من تجاربهم وأفكارهم. إذا كنت تواجه أي تحديات أو لديك أي أسئلة، فلا تتردد في طرحها، فالمجتمع البرمجي دائماً مستعد للمساعدة.

بهذا، نكون قد انتهينا من استعراض كيفية قراءة ملف نصي وتخزين البيانات في مصفوفة من كائنات الـ Movie في لغة الجافا. أتمنى لك مزيداً من التقدم والنجاح في رحلتك في عالم البرمجة.

مقالات ذات صلة

زر الذهاب إلى الأعلى

هذا المحتوى محمي من النسخ لمشاركته يرجى استعمال أزرار المشاركة السريعة أو تسخ الرابط !!