Java failu ievades straume Ubuntu 20.04

Java Failu Ievades Straume Ubuntu 20 04



'Šajā rakstā mēs apspriedīsim dažādus veidus, kā nolasīt datus no failiem baitu masīvā, izmantojot Java ievades straumes klasi. Šī klase ir sakārtota baitu plūsma no faila. Klasē Java ievades straume ir vairākas funkcijas, kuras tiek plaši izmantotas un tiks apspriestas šajā rakstā, piemēram, lasīšanas (), pieejams (), izlaist () un aizvēršanas () metodes. Šīs metodes tiek izmantotas, lai lasītu dažādu paplašinājumu failus, piemēram, bin vai txt failus, un tās var mainīt, lai iegūtu informāciju no jebkuras faila vietas. Šajā rakstā mēs ieviesīsim šīs metodes Ubuntu 20.04 vidē.

Ir daudz vairāk failu ievades straumes klases metožu, kas arī ļoti palīdz iegūt datus no faila; daži no tiem ir int read(baits[] b), šī funkcija nolasa datus no ievades straumes līdz b.length baitiem garumā. Faila kanāls iegūst kanālu (): konkrētais faila kanāla objekts, kas savienots ar faila ievades straumi, tiek atgriezts, izmantojot to. Finalize() tiek izmantots, lai nodrošinātu, ka funkcija close() tiek izsaukta, kad vairs nav atsauces uz faila ievades straumi.

01. piemērs: viena baita lasīšana no teksta faila, izmantojot ievades straumes klases lasīšanas () un close() metodes

Šajā piemērā tiek izmantota File Input Stream, lai nolasītu vienu rakstzīmi un izdrukātu saturu. Pieņemsim, ka mums ir fails ar nosaukumu “file.txt” ar tālāk norādīto saturu:









Pieņemsim, ka mums ir fails ar nosaukumu “file.txt” ar iepriekš parādīto saturu. Tagad mēģināsim nolasīt un izdrukāt faila pirmo rakstzīmi.







Vispirms mums ir jāimportē java.io. Failu ievades straumes pakotne, lai izveidotu faila ievades straumi. Pēc tam mēs izveidosim jaunu failu ievades straumes objektu, kas tiks saistīts ar mainīgajā “f” norādīto failu (file.txt).

Šajā piemērā mēs izmantosim Java File Input Stream klases metodi “int read()”, ko izmanto, lai nolasītu vienu baitu no faila un saglabātu to mainīgajā “I”. Pēc tam “System.out.print(char(i))” parāda rakstzīmi, kas atbilst šim baitam.



Metode f.close() aizver failu un straumi. Pēc iepriekš minētā skripta izveides un palaišanas mēs iegūsim šādu izvadi, jo mēs redzam, ka ir izdrukāts tikai teksta sākuma burts “L”.

02. piemērs: visa teksta faila satura lasīšana, izmantojot ievades straumes klases lasīšanas () un close() metodes

Šajā piemērā mēs lasīsim un parādīsim visu teksta faila saturu; kā parādīts zemāk:

Atkal mēs importēsim java.io. Failu ievades straumes pakotne, lai izveidotu faila ievades straumi.

Pirmkārt, mēs nolasīsim faila pirmo baitu un parādīsim atbilstošo rakstzīmi while cilpas iekšpusē. Cilpa while darbosies, līdz vairs nebūs palicis neviens baits, tas ir, līdz faila teksta beigām. 12. rindiņa nolasīs nākamo baitu, un cilpa turpināsies līdz faila pēdējam baitam.

Pēc iepriekš minētā koda apkopošanas un izpildes mēs iegūsim šādus rezultātus. Kā redzam, terminālī tiek parādīts viss faila “Lorep Ipsum” teksts.

03. piemērs: pieejamo baitu skaita noteikšana teksta failā, izmantojot ievades straumes klases pieejamo () metodi

Šajā piemērā mēs izmantosim failu ievades straumes funkciju “available()”, lai noteiktu esošo baitu skaitu faila ievades straumē.

Pirmkārt, mēs izveidojām failu ievades straumes klases objektu ar nosaukumu “a” ar šādu kodu. 5. rindā mēs izmantojām metodi “available()”, lai noteiktu un parādītu failā pieejamo baitu kopējo daudzumu. Pēc tam no 6. rindas līdz 8. rindiņai trīs reizes izmantojām funkciju “lasīt ()”. Tagad 9. rindā mēs atkal izmantojām metodi “available()”, lai pārbaudītu un parādītu atlikušos baitus.

Pēc koda kompilēšanas un palaišanas mēs varam redzēt, ka izvades pirmajā rindā ir parādīts failā pieejamo baitu kopējais skaits. Nākamajā rindā tiek parādīts koda beigās pieejamo baitu skaits, kas ir par 3 mazāks nekā sākumā pieejamie baiti. Tas ir tāpēc, ka savā kodā trīs reizes izmantojām lasīšanas metodi.

04. piemērs: teksta faila baitu izlaišana, lai nolasītu datus no konkrēta punkta, izmantojot ievades straumes klases metodi skip()

Šajā piemērā mēs izmantosim failu ievades straumes metodi “skip(x)”, kas tiek izmantota, lai ignorētu un neņemtu vērā norādīto datu baitu skaitu no ievades straumes.

Zemāk esošajā kodā, pirmkārt, esam izveidojuši faila ievades straumi un saglabājuši to mainīgajā “a”. Tālāk mēs izmantojām metodi “a.skip(5)”, kas izlaidīs pirmos 5 faila baitus. Pēc tam mēs izdrukājām atlikušās faila rakstzīmes, izmantojot metodi “lasīt ()” kamēr cilpas ietvaros. Visbeidzot, mēs aizvērām faila ievades straumi, izmantojot metodi “close ()”.

Tālāk ir redzams termināļa ekrānuzņēmums pēc koda kompilēšanas un palaišanas. Kā redzam, tiek parādīts tikai “Ipsum”, jo esam izlaiduši pirmos 5 baitus, izmantojot “skip()” metodi.

Secinājums

Šajā rakstā mēs esam apsprieduši klases File Input Stream lietojumus un tās dažādās metodes; lasīt (), pieejams (), izlaist () un aizvērt (). Mēs izmantojām šīs metodes, lai nolasītu pirmo faila elementu, izmantojot lasīšanas () un close () metodes. Pēc tam mēs lasām visu failu, izmantojot iteratīvo pieeju un izmantojot tās pašas metodes. Pēc tam mēs izmantojām pieejamo () metodi, lai noteiktu baitu skaitu, kas atrodas faila sākumā un pabeigšanā. Pēc tam mēs izmantojām skip() metodi, lai pirms faila lasīšanas izlaistu vairākus baitus, kas ļāva mums iegūt konkrētus nepieciešamos datus.