Kako snemati v datoteko Java

Pri pisanju programov v Javi je potrebno prej ali slej prebrati in zapisati podatke v datoteko. V ta namen jezik ponuja naslednja orodja za vhodne in izhodne podatke: Writer razred za pisanje in Reader za branje. Nasledniki teh razredov so razredi FileWriter in FileReader, ki so primerni za neposredno delo z datotekami.

Preprost primer pisanja v datoteko v Javi

Preden ustvarite vstopno točko v programu, morate predpisati uvoz (potrebni razredi so v knjižnicah java.io *, napisali bomo zvezdico, ker bodo v prihodnosti potrebni nadaljnji razredi od tega knjižnice) Uvoz v urejevalniku mora izgledati takole:


import java.io. *;

Potem znotraj poljubnega razreda napišemo glavno metodo, ki nato ustvarimo primerek razreda FileWriter in ga zapišemo pisatelju pisanja:

FileWriter writer = new FileWriter ("text.txt") );

Ko zaženete ta program, bo datoteka text.txt ustvarjena v korenu projekta. Če želite v to datoteko napisati nekaj, se morate sklicevati na metodo write () Writer, metoda write () vzame niz kot argument, tam napisati nekaj:

writer.write ("primer pisanja v datoteko v Javi");

Pri obravnavi uvedbe ekstrakcije podatkov je treba upoštevati tudi izjemne razmere, ker ne vemo vedno, kaj bo v teh podatkih. Prevajalnik te kode ne bo preskočil brez posebne zasnove Izjeme, ki jo želite vstaviti v podpis glavne metode. Prav tako morate paziti, da končate nit, po metodi write () pa morate zapreti tok z metodo close (). Kakona tej stopnji mora biti videti kot koda, prikazana na spodnji sliki.

& lt; skript async = "//pagead2.googlesyndication.com/pagead/js/adsbygoogle.js">
& lt ;! - fb_336x280_2 - & gt;

& lt; skript & gt; (adsbygoogle = window.adsbygoogle || []). push ({});

Ko zaženete program v korenu projekta, se pojavi datoteka text.txt, v kateri bo napisan "primer pisanja v datoteko v Javi". Vendar pa je ta primer zgolj informativne narave, tako da ga lahko uporabimo v "bojnih" pogojih, zato je treba opraviti manjše preoblikovanje.

Refactoring

Prva stvar, ki jo je treba narediti, je, da kodo, odgovorno za vnos podatkov, vnese v poskusni ulov (lažje je upravljati izjeme in uporabljati njihove izjeme). Nato morate ustvariti ločeno spremenljivko z vrsto datoteke, kjer lahko napišete naslov in ime datoteke (priročno je, saj pogosto morate delati z več datotekami, jih postavite v ločene spremenljivke in obdelati s ciklom in šele nato se spremenljivka vstavi kot parameter v datotečni datoteki )

Prav tako je dobra praksa, da pri delu z V /I tokovi uporabimo varovalne pasove (razredu FileWriter dostopamo na pogonu, če veliko od njih potrebuje veliko pomnilnika, zato je pametno manipulirati s podatki z medpomnilnikom), za to se uporablja razred BufferedWriter. in kot zapis parametra je v oklepaju zapisana datoteka FileWriter. Metoda flush () se imenuje za sprostitev medpomnilnika, lahko jo nastavite pred metodo close (), zdaj pa bo koda videti kot spodnja.

Kako zapisati datoteko Java v zaporedju

Vsakič, ko bo ta koda sestavljena v konzoli, jo bo prepisalain isti vnos. Kako narediti nove informacije, da se program zažene v datoteki po vrstnem redu? Da bi to naredili, morate najprej napisati ključno besedo true drugi parameter pri ustvarjanju datoteke FileWriter:


& lt; script type = "text /javascript" & gt;
lahko blockSettings2 = {blockId: "R-A-70350-2", renderTo: "yandex_rtb_R-A-70350-2", async:! 0};

če (document.cookie.indexOf ("abmatch ="))> = 0) {
blockSettings2 = {blockId: "RA-70350-2", renderTo: "yandex_rtb_R-A-70350- 2 ", statId: 70350async: 0};
}

Funkcija (a, b, c, d, e) {a [c] = a [c] || [], a [c] .push (funkcija () {Ya .Context.AdvManager.render (blockSettings2)}), e = b.getElementsByTagName ("script") , d = b.createElement ("script"), d.type = "text /javascript", d.src = "//an.yandex.ru/system/context.js", d.async =! 0e.parentNode.insertBefore (d, e)} (to, ta.dokument, "yandexContextAsyncCallbacks");

BufferedWriter writer = novi BufferedWriter (novi FileWriter (myFile, true));

Vsakič, ko program pri prevajanju zapiše datoteko niz, ki je v metodi write (), ne da bi bil premaknjen v naslednjo vrstico. V našem primeru se je izkazalo, da:

Primer pisanja primera pisanja Java za primer pisanja Java Java

Enostaven način za premik niza je dodajanje operatorja /n nizu argument metode. write (), vendar ta metoda ne bo delovala v različnih operacijskih sistemih. Če želite zapisati datoteko zaporedno na različne platforme, morate uporabiti metodo sistema line.separator. Naslednji primer prikazuje, kako napisati to metodo za spremenljivko lineSeparator, ki jo lahko nato uporabimo v nizu argumenta metode write ():

String lineSeparator = System.getProperty ("line.separator");​​Nazadnje bo kodeks izgledal kot spodaj.
Rezultat te izvedbe kode je naslednji: v datoteki text.txt, ko se program sproži trikrat, črta »primer pisanja vJava ".

Sorodne publikacije