Դաս 18։ Java – Ֆայլեր և IO

0

streams

Java.io փաթեթը պարունակում է գրեթե բոլոր դասերը, որոնք դուք երբեւէ կարող են անհրաժեշտ լինել Java-ում մուտքի կամ ելքի (I / O) համար: Այս բոլոր հոսքերը ներկայացնում են մուտքի աղբյուրը և ելքի կամ թաղարկման ուղղությունը: Java.io փաթեթի հոսքը աջակցում է բազմաթիվ տվյալների տեսակներ, օրինակ՝ primitives, object, localized characters և այլն:

Հոսք

Այն կարելի է սահմանել որպես տվյալների հաջորդականություն: Կա երկու տեսակի հոսք՝

  • InPutStream օգտագործվում է համապատասխան աղբյուրից տվյալների ընթերցման համար:

  • OutPutStream – օգտագործվում է տվյալները նշանակման վայարում գրի առնելու համար:

Java-ն տրամադրում է ուժեղ, սակայն ճկուն աջակցություն I / O- ի ֆայլերի և դրանց հետ կապված ցանցերի համար, սակայն այս ձեռնարկում ներառված են հոսքերի և I / O-ի հետ կապված հիմնական ֆունկցիոները: Ահա առավել հաճախ օգտագործվող օրինակները՝

Byte Streams/Բայթերի հոսքեր

Java բայթ հոսքերը օգտագործվում են 8-բիթանոց բայթերի մուտքագրման և թողարկման համար: Թեև կան բայթային հոսքերի հետ կապված շատ դասեր, բայց ամենից շատ կիրառվողները FileInputStream և FileOutputStream են: Հետևյալ օրինակում օգտագործված են այս երկու դասերը։

Օրինակ՝

import java.io.*;

public class CopyFile {

 

public static void main(String args[]) throws IOException {

FileInputStream in = null;

FileOutputStream out = null;

 

try {

in = new FileInputStream(“input.txt”);

out = new FileOutputStream(“output.txt”);

int c;

while ((c = in.read()) != 1) {

out.write(c);

}

}finally {

if (in != null) {

in.close();

}

if (out != null) {

out.close();

}

}

}

}

Այժմ եկեք մուտքագրեք input.txt ֆայլ հետևյալ բովանդակությամբ –

This is test for copy file.

Այնուհետև, հավաքեք վերը նշված ծրագիրը և իրականացրեք այն, ինչը կհանգեցնի նույն բովանդակությամբ output.txt ֆայլի ստեղծմանը, որը ունեինք input.txt-ում: Այնպես որ, տեղադրեք վերը նշված կոդը CopyFile.java ֆայլում և կատարեք հետևյալը

$javac CopyFile.java

$java CopyFile

Character Streams/Նիշերի հոսքերը

Java բայթ հոսքերը օգտագործվում են 8-բիթանոց բայթերի մուտքագրման և թողարկման համար, իսկ Java-ի նիշային հոսքերը օգտագործվում են 16-բիթանոց Unicode-ի մուտքագրման և թողարկման համար: Թեև կան նիշային հոսքերի հետ կապված շատ դասեր, բայց ամենից շատ կիրառվողները FileReader եւ FileWriter են: Թեև FileReader-ը օգտագործում է FileInputStream և FileWriter օգտագործում է FileOutputStream-ը, հիմնական տարբերությունն այն է, որ FileReader-ը կարդում է երկու բայտ միաժամանակ, իսկ FileWriter-ը գրում է երկու բայտ միաժամանակ:

Մենք կարող ենք վերը նշված օրինակը ձևափոխել, որը թույլ է տալիս կիրառվել այս երկու դասերը՝ մուտքի ֆայլը ելքային ֆայլում պատճենելու համար `

Օրինակ՝

import java.io.*;

public class CopyFile {

 

public static void main(String args[]) throws IOException {

FileReader in = null;

FileWriter out = null;

 

try {

in = new FileReader(“input.txt”);

out = new FileWriter(“output.txt”);

int c;

while ((c = in.read()) != 1) {

out.write(c);

}

}finally {

if (in != null) {

in.close();

}

if (out != null) {

out.close();

}

}

}

}

Այժմ եկեք մուտքագրեք input.txt ֆայլ հետևյալ բովանդակությամբ –

This is test for copy file.

Այնուհետև, հավաքեք վերը նշված ծրագիրը և իրականացրեք այն, ինչը կհանգեցնի նույն բովանդակությամբ output.txt ֆայլի ստեղծմանը, որը ունեինք input.txt-ում: Այնպես որ, տեղադրեք վերը նշված կոդը CopyFile.java ֆայլում և կատարեք հետևյալը

$javac CopyFile.java

$java CopyFile

 

Հարգելի ընթերցող, խնդրում ենք չմոռանալ like տալ մեր ֆեյսբուքյան էջին, քանի որ նորությունների մեծ մասը առաջինը տեղադրվում է հենց այնտեղ։ Ինչպես նաև հետևեք մեզ այլ սոցիալական ցանցերում և, իհարկե, գրանցվեք մեր բլոգում։

Share.