الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

طريقة القراءه من ملف وتخزينه في مصفوفه

بدأه عبقري زمانه في 5 ديسمبر 2011 · 8 رد · 1,653 مشاهدة · في JavaSE
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

السلام عليكم ورحمة الله وبركاته

أريد معرفة طريقة القراءة من ملف ومن ثم تخزينه في مصفوفه

<<وإن كان يُخزن في string فهو أفضل :happy:

حيث أني جربت هذا الكود:

try

{

input = new Scanner (new FileInputStream("input.txt"));

}

catch(FileNotFoundException e)

{

System .out.println("not open");

// System.out.println(input.nextLine());

System.exit(0);

}

System.out.println(input.nextLine());

input.close();

هذا الكود لم ينتج لي أي خطأ ولكنه لم يفتح لي الملف :mad:

مع أني وضعت الملف داخل مجلد الـ project نفسه

,,

ارجو إفادتي بالطريقه

وشكرا

#2
عبقري زمانه كتب:

السلام عليكم ورحمة الله وبركاته

أريد معرفة طريقة القراءة من ملف ومن ثم تخزينه في مصفوفه

<<وإن كان يُخزن في string فهو أفضل :happy:

حيث أني جربت هذا الكود:

try

{

input = new Scanner (new FileInputStream("input.txt"));

}

catch(FileNotFoundException e)

{

System .out.println("not open");

// System.out.println(input.nextLine());

System.exit(0);

}

System.out.println(input.nextLine());

input.close();

هذا الكود لم ينتج لي أي خطأ ولكنه لم يفتح لي الملف :mad:

مع أني وضعت الملف داخل مجلد الـ project نفسه

,,

ارجو إفادتي بالطريقه

وشكرا

السلام عليكم

جرب هذه الطريقة

رائعة و تجعل البرنامج ذا مظهر جيد

 File f;
    Scanner sc;
    String s="";

        try {
            JFileChooser ch=new JFileChooser();
       FileNameExtensionFilter fil=new FileNameExtensionFilter("choisir votre ficier text ou la matrice d'adjasance situee","txt");
       ch.setFileFilter(fil);
       ch.showOpenDialog(null);
     sc=new Scanner(ch.getSelectedFile());



            while(sc.hasNext()){
             s=s+sc.nextLine();   
            }

            sc.close();
        } catch (FileNotFoundException ex) {
           System.out.println("Not found");
        }
#3

السلام عليكم ورحمة الله وبركاته

باستخدام BufferReader

import java.io.*;

public class Readfile {

public static void main(String [] args)

{

try{

BufferedReader read=new BufferedReader(new FileReader("fich.txt"));

//String f=null ;

while(read.read()!=-1)

{

System.out.println(read.readLine());

}

}catch(Exception e){System.out.println(e);

e.printStackTrace();

}

}

}

#4

السلام عليكم

أولاً: رجاء وضع الكود داخل نص كود حتى يكون مقروء للجميع

بالنسبة لإستخدام ال scanner كما هو موضح من الكود قم بطباعة ال exception حتى تعرف ماهو الخطاً

}catch (Exception e) {
			e.printStackTrace();
		}

جرب وضع الملف فى مسار سهل وحاول مره اخرى

اذا قمت بوضع الملف فى نفس المجلد إستخدم هذا الكود

public class ReadFromFile {

	public static void main(String[] args) {
		try{
			String path = System.getProperty("user.dir");// <-- This code get current directory 
			String fileName = path + "/input.txt";
			Scanner in = new Scanner(new FileInputStream(fileName));
			String line = in.nextLine();
		}catch (Exception e) {
			System.out.println("Error");	
			e.printStackTrace();
		}
	}

}

إستخدام كلاس ال scanner ليس جيد على أى حال و إنما يفضل إستخدام كلاس أخر مثل ال BufferedReader

public class ReadFromFile {
	public static void main(String[] args) {
		ArrayList<String> fileData = new ArrayList<String>();
		try{
			String path = System.getProperty("user.dir");// <-- This code get current directory
			String fileName =  path  + "/test.txt";
			BufferedReader fileReader = new BufferedReader(new FileReader(fileName));
			String line = "";

			while ( (line = fileReader.readLine()) != null) {
				fileData.add(line);
			}
		}catch (Exception e) {
			System.out.println("Error");
			e.printStackTrace();
		}
	}
}
#5

جزاكم الله خير جميعا

وجاري تجريب الأكواد

وكثر الله امثالكم

<<أعتذر اني لم أدخل طوال اليوم

,,

وأخي abolkog

ان شاء الله في المره القادمه سأضع الكود بشكله الصحيح :happy:

#6

جزاكم الله خير

كود القراءة ماشي مضبوووط :wink:

ولكن ماهو الأمر الذي أستطيع من خلاله تخزين النص داخل مصفوفه؟

,,

وجزاكم الله خير

^_^

تم تعديل هذه المشاركة بواسطة عبقري زمانه في 8 ديسمبر 2011 في 18:04

#7

بعد اذن الاخ abolkog

هذا هو السطر

 fileData.add(line);

ولو تلاحظ تم مسبقاً تعريف fileData من نوع arrayList

والأمر add لاضافة النص المقروء من الملف داخل المصفوفة

#8
 
                       import java.io.* ;
public class Test {

public static void main(String[] args) {
	try{

    BufferedReader b = new BufferedReader(new FileReader ("file.txt") , 5);
    String tab[] ;
    String line=" ";
		while(b.read()!=-1)
		{
			line=b.readLine();
		    tab= line.split(",") ;

		for(int i=0 ; i<tab.length;i++)
		{
			System.out.println(tab);
		}
		}
	b.close();		
	   }catch(Exception c)
	   {
		System.out.println(c ) ;
		c.printStackTrace();

	    }
	}

}

split().readline() تقوم بتخزين الكلمات في المصفوفة

لكن لازم تحدد لها ماهو الفرق بين الكلمة الأولى و الكلمة التي تليها ،يمكن أن يكون فواصل او نقط او فراغ،إن استخدمت الفراغ كمافعلت في المثال لابد ان تكون نفس مساحة الفراغ التي حددتها في ()split

هي نفسها التي بين اكلمات في (file)

exo.java

#9

آسف لقد فرقت بين كل كلمة واخرى بالفاصلة وليس الفراغ >>>splite(" ,")

مواضيع مشابهة

عدد الزوار حالياً

المتواجدون خلال آخر دقيقتين · يتحدّث كل ٣٠ ثانية

—الإجمالي—أعضاء مسجّلون—زوار بدون تسجيل

جارٍ التحقق من المتواجدين…