Pisanje u datoteku u Kotlinu

1. Pregled

U ovom brzom vodiču naučit ćemo o raznim načinima zapisivanja sadržaja u datoteku pomoću metoda produženja Kotlina - dostupnih u svojoj standardnoj knjižnici.

2. Kotlin Datoteka Proširenja

Kotlin pruža razne načine zapisivanja u datoteku u obliku metoda produženja za java.io.Datoteka.

Upotrijebit ćemo nekoliko od njih kako bismo demonstrirali različite načine na koje to možemo postići pomoću Kotlina:

  • writeText - omogućuje nam pisanje izravno iz a Niz
  • writeBytes - omogućuje nam pisanje izravno s a ByteArray
  • printWriter - pruža nam a PrintWriter
  • bufferWriter - omogućuje nam pisanje pomoću a BufferedWriter

Razmotrimo ih detaljnije.

3. Neposredno pisanje

Pisanje izravno u Datoteka iz datog je izvora najjednostavnija strategija koju možemo očekivati ​​pomoću metoda produženja Kotlina.

3.1. writeText

Vjerojatno najjednostavnija metoda produženja, writeText uzima sadržaj kao a Niz argument i zapisuje ga izravno u navedenu datoteku. Dati sadržaj kodiran je tekstom UTF-8 (zadano) ili bilo koji drugi navedeni skup znakova:

Datoteka (fileName) .writeText (fileContent)

Ova metoda interno delegira na writeBytes kako je opisano u nastavku. Ali prvo, pretvara zadani sadržaj u niz bajtova pomoću navedenog znaka.

3.2. writeBytes

Isto tako, bajtove možemo koristiti kao ulaz. Metoda writeBytes uzima ByteArray kao argument i izravno ga zapisuje u navedenu datoteku. To je korisno kada sadržaj imamo kao niz bajtova, a ne kao običan tekst.

Datoteka (fileName) .writeBytes (fileContentAsArray)

Ako data datoteka postoji, prepisuje se.

4. Zapisivanje u a Datoteka Korištenje programa Writers

Kotlin također nudi metode proširenja koje nam pružaju instancu Java Writer.

4.1. printWriter

Ako bismo htjeli koristiti Javu PrintWriter, Kotlin pruža a printWriter funkcioniraju upravo u tu svrhu. Pomoću nje možemo ispisati formatirane prikaze objekata na Izlazni tok:

Datoteka (fileName) .printWriter ()

Ova metoda vraća novu PrintWriter primjer. Dalje, možemo iskoristiti metodu koristiti da to riješi:

Datoteka (fileName) .printWriter (). Koristite {out -> out.println (fileContent)}

S koristiti, možemo izvršiti funkciju na resursu koja se zatvara nakon prestanka. Resurs je zatvoren bez obzira na to je li se funkcija uspješno izvršila ili je izbacila iznimku.

4.2. bufferingWriter

Isto tako, Kotlin također nudi a bufferingWriter funkcija koja nam pruža Javu BufferedWriter.

Tada s njim možemo učinkovitije upisati tekst u tok izlaza znakova.

Datoteka (fileName) .bufferedWriter ()

Slično PrintWriter, ova funkcija vraća novu BufferedWriter instancu koju kasnije možemo koristiti za pisanje sadržaja datoteke.

Datoteka (fileName) .bufferedWriter (). Koristi {out -> out.write (fileContent)}

5. Zaključak

U ovom smo članku vidjeli različite načine zapisivanja u datoteku pomoću metoda produženja Kotlina.

Konačno, izvorni kod za ovaj članak i relevantni testni slučajevi dostupni su u sljedećem GitHub repozitorijumu.


$config[zx-auto] not found$config[zx-overlay] not found