ادخ منا به یزاس مهنابر هتفرشیپ
:اه لیاف
تاعلاطا یخرب یبایزاب و هریخذ ،ناسیون همانرب یاهزاین هلمج زا هب
یمئاد تروص یم
دشاب هداد نامتخاس نونک ات . و اه هیارآ عاونا دننام ییاه
اه هتشر هدیدرگ یفرعم
یلصا هظفاح رد اه هداد تقوم هریخذ یارب هک دنا
همانرب زا جورخ ضحم هب و دنشاب یم دنور یم نیب زا
. هب زاین نیاربانب
هداد نامتخاس هداد هریخذ یارب یا
جیاتن و اه یمئاد تروص هب
دشاب یم
یم هدافتسا اه لیاف زا یسیون همانرب یاه نابز رد هک .دوش
همانرب نابز
ک اواج یسیون اه جیکپ و اه سلا
ی اه لیاف اب راک و تیریدم روظنم هب ار ی
نیا زا هدافتسا اب هک تسا هتفرگ رظن رد جیکپ
اه یم ناوت ،رظن دروم روما
داجیا تهج ،
د ماجنا ار اه لیاف لخاد تاعلاطا یبایزاب و هریخذ دا
سلاک .
رد اه لیاف اب راک هب طوبرم یاهدتم و اه جیکپ
ی ب ه مان java.io رارق
.دراد
نیا جیکپ هلیسو هب هک تسا فلتخم یاه سلاک زا یا هعومجم لماش
ناوت یم ،اه سلاک نیا تایلمع
جنا اه لیاف یور رب ار یفلتخم داد ما
. زا
نآ درک هراشا ریز دراوم هب ناوت یم هلمج :
دیدج لیاف داجیا دوجوم یاه لیاف فذح لیاف رد دوجوم یاوتحم ندناوخ رد دیدج یاوتحم هریخذ لیاف لخاد
رگید ریسم رد لیاف زا یپک هخسن هیهت ای و لیاف مان رییغت
هار اواج رد ندناوخ یارب یدایز یاه
رد نتشون و دراد دوجو لیاف
یارب .
راک ییودود یاه لیاف ای و ینتم یاه لیاف یور ناوت یم ،اه لیاف اب راک تاعلاطا همه ینتم یاه لیاف رد .درک
، نتم تروص هب دادعا یتح
بسانم یبایزاب یارب ییاه شور دیاب نیاربانب .دوش یم هریخذ )رتکاراک(
ا هک یلکش نامه هب جیاتن و اه هداد ییودود یاه لیاف رد .تشاد تاعلاط
دنریگ یم رارق یلصا هظفاح رد
،
.دنریگ یمرارق لیاف رد
اه لیاف تاعلاطا هب یسرتسد هوحن دنا هتسد ود
:
یبیترت یسرتسد (Sequential Access)
: نامه هب تاعلاطا
.دنا هدافتسا لباق بیترت نامه هب ،دنا هدش هتشون لیاف رد هک یبیترت میقتسم ای یفداصت یسرتسد :(Random Access)
شور نیا رد
رظن دروم تاعلاطا سردآ نتشاد اب نآ هب میقتسم روط هب ناوت یم ،
.تشاد یسرتسد
%%%%%%%%%%%%%%%%%%%%%%%
/ندناوخ
یبیترت یسرتسد اب ینتم یاه لیاف رد نتشون
PrintWriter class can be used to create a file and write data to a text file.
Reading Data Using Scanner
A Scanner breaks its input into tokens delimited by whitespace characters.
To read from the keyboard, you create a Scanner for System.in, as follows:
To read from a file, create a Scanner for a file, as follows:
%%%%%%%%%%%%%%%%%%%%%%%%%%
:لاثم
لیاف زا ندناوخ و نتشون
package fileprogram;
import java.util.Scanner;
public class FileProgram {
public static void main(String[] args) throws Exception {
java.io.File file=new java.io.File ("Student_file.txt");
مان هب یلیاف هک یتروص رد Student_file.txt
.دوش یم داجیا لیاف نیا ،دشابن یبناج هظقاح یور //
if (file.exists()){ // دشاب هتشاد دوجو لیاف رگا
System.out.print("File already exist!");
System.exit(0);
}
java.io.PrintWriter output=new java.io.PrintWriter(file);
و دوش یم هدامآ تشون یارب لیاف output
دنک یم هراشا لیاف یادتبا هب //
//.دوش هتشون لیاف رد هلصاف اب دیاب تاصخشم
//write to file
output.print(92345);
output.print(" Mina Amini ");
output.println(17.7);
output.print(93411);
output.print(" Ali Ahmadi ");
output.println(17.0);
//close file
output.close();
Scanner input=new Scanner (file);
ندناوخ یارب لیاف نآ زا
دوش یم زاب //
//Read data from file
while (input.hasNext()){ // هدیسرن لیاف یاهتنا هب هک یعقوم ات int Stno=input.nextInt();
String firstName=input.next();
String lastName=input.next();
double Score=input.nextDouble();
System.out.println(Stno+"\t"+firstName+"\t"
+lastName+"\t"+Score);
}
//close file input.close();
} // end main } // end class
%%%%%%%%%%%%%%%%%%%%%%%%%%
نتشون و ندناوخ
لیاف رد ءیش کی یسرتسد اب
یبیترت
Object serialization:
We also know that these values are separated by spaces, with only one record on each line. Sometimes we’ll not know exactly how the data is stored in a file. In such cases, we want to read or write an entire object from a file. Java provides such a mechanism, called object serialization. A so- called serialized object is an object represented as a sequence of bytes that includes the object’s data as well as information about the object’s type and the types of data stored in the object. After a serialized object has been written into a file, it can be read from the file and deserialized—that is, the type information and bytes that represent the object and its data can be used to recreate the object in memory.
%%%%%%%%%%%%%%%%%%%%%%%%%%
:لاثم
همانرب
یا سلاک کی بلاق رد ار نایوجشناد تاصخشم هک دیسیونب
.دنک پاچ ار نایوجشناد تاصخشم و هرمن ممیزکام و دناوخب یدورو زا
package student;import java.io.*;
public class Student implements Serializable {
private int Stno;
private String Name;
private double Mark;
public Student (){
Stno=0;
Name="";
Mark=0.0;
}
public Student (int S, String N, double M){
Stno=S;
Name=N;
Mark=M;
}
public void Print_Student(){
System.out.println(Stno+"\t"+Name+"\t"+Mark);
}
public double getMark() { return Mark;
}
} // end class
package student;
import java.io.*;
import java.util.Scanner;
public class TestStudent {
public static void main(String[] args) throws IOException, ClassNotFoundException {
FileOutputStream file=new FileOutputStream("Students.txt");
//کسید یور لیاف داجیا
ObjectOutputStream out = new ObjectOutputStream(file);
لیاف رد نتشون //
Scanner input=new Scanner (System.in);
for(int i=1; i<=30;i++){
int St=input.nextInt();
String Na=input.next();;
double Ma=input.nextDouble();
Student student1 = new Student(St,Na,Ma);
out.writeObject(student1);
}
out.close();
FileInputStream file1=new FileInputStream("Students.txt");
//دوش یم زاب ندناوخ یارب لیاف
ObjectInputStream in = new ObjectInputStream(file1);
double Max=0;
try{
while (true){
Student Student2 = (Student) in.readObject();
if (Student2.getMark()> Max) Max=Student2.getMark();
Student2.Print_Student();
} }
catch ( EOFException eof ){
in.close();
} // end catch
System.out.println("Maximum Mark:"+Max);
} // end main } // end class
Serializing Arrays
An array is serializable if all its elements are
serializable. An entire array can be saved into a file
using
writeObject and later can be restored using readObject. ییودود لیاف رد یبیترت یسرتسد اب نتشون و ندناوخ
%%%%%%%%%%%%%%%%%%%%%%%%%%
یسرتسد اب نتشون و ندناوخ
یفداصت
ییودود لیاف رد
%%
%%%%%%%%%%%%%%%%%%%%%%%%