Jak nahrávat do souboru Java

Při psaní programů v Javě bude dříve nebo později nutné číst a zapisovat informace do souboru. Pro tento jazyk poskytuje následující nástroje pro vstup a výstup dat: class Writer Reader pro psaní a čtení. Dědici těchto tříd jsou třídy FileWriter a FileReader, které jsou vhodné pro práci se soubory přímo.

Jednoduchý příklad psaní do souboru v Javě

Před vytvořením vstupní bod do programu, je třeba, aby evidovaly dovoz (požadované třídy jsou v knihovně java.io * předepsat hvězda t. K. Přesto je třeba dalších tříd knihovny) Dovoz v editoru by měl být následující:


import java.io. *;

, pak napsat v libovolném způsobu třída hlavní, což zase vytváří instance třídy FileWriter a zapsat do proměnné psát:

,FileWriter autor = nový FileWriter („text.txt“ );

Při spuštění souboru program je vytvořen v kořenové text.txt projektu. Aby bylo možné psát něco v souboru, musíte se obrátit metodu write () třídy spisovatel, způsob zápisu () přebírá jako parametr řetězec, něco napsat tam

writer.write ("příklad zápisu do souboru v jazyce Java");

Při práci s výstupem vstupní data musí také brát v úvahu mimořádnou situaci vzhledem k tomu, že ne vždy vědět, co je v datech. Kompilátor neprojde tento kód bez speciální konstrukce vrhá výjimka, že chcete dát metoda podpis main. Také je potřeba se postarat o výstupu z proudu po metodu write () je třeba zavřít proudu pomocí metody close (). Jakby měl vypadat jako kód v této fázi, jak je znázorněno na obrázku níže.

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

& lt; script & gt; (adsbygoogle = window.adsbygoogle || []) stisknout ({});

Pokud se program spustí v kořenovém adresáři soubor projektu bude text.txt, který bude napsán „například psaní soubor v Javě“. Nicméně, tento příklad je vhodný pouze pro informační účely a provést ji se „bojových“ podmínkách muset strávit trochu refaktoring.

Refactoring

První věc, kterou udělat - uzavřít kód, který je odpovědný za zavedení výroby v konstrukci try - catch (je jednodušší spravovat a využívat jejich výjimek výjimky). Pak budete muset vytvořit samostatnou proměnnou typ souboru, který může být psán adresu a název souboru (to je užitečné, v. To. Často je třeba pracovat s více soubory, které jsou umístěny v samostatných proměnných a pracovního cyklu, a pak výsledná proměnná, která zní jako parametr FileWriter ).

Je také dobré praxe při práci s proudy vstupní /výstupní pufr se považuje za použití (třída FileWriter týká řídit, pokud hodně z toho může vyžadovat velké množství paměti, takže šikovně manipulovat dat pomocí vyrovnávací paměti), tato třída se používá BufferedWriter , a FileWriter je zapsán v závorkách jako parametr. Metoda flush () se volá k uvolnění vyrovnávací paměti, lze ji nastavit před metodou close (), nyní kód vypadá jako níže.

K nahrávání souborů Java řádek po řádku

Pokaždé, když kompilace tento kód bude přepsán každý konzolea stejný záznam. Jak vytvořit nové informace pro spuštění programu v souboru v pořádku? K tomu je třeba nejdříve psát klíčových slov pravý druhý parametr při vytváření FileWriter:


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

, pokud (document.cookie.indexOf ("abmatch =") větší nebo rovno 0) {
blockSettings2 = {blockId: "RA-70350-2", renderTo „yandex_rtb_R-A-70350- 2 ", stav: 70350async:! 0};
}

! Funkce (a, b, c, d, e) {a [c] = a [c] || [], se [C] .push (funkce () {Ya .Context.AdvManager.render (blockSettings2)}), e = b.getElementsByTagName ("scénář") , d = b.createElement ("scénář"), d.type = "text /javascript", d.src = "//an.yandex.ru/system/context.js",d.async=!0e.parentNode.insertBefore(d,e)}(this,this.document,"yandexContextAsyncCallbacks");

BufferedWriter spisovatel = nový BufferedWriter (nový FileWriter (myFile, true));

Pokaždé, když sestavit program nahraje soubor řetězec, což je metoda write (), aniž by je převáděl na další řádek. V našem případě se ukázalo, že příklad

, psaní na vzorku záznamu Java ve vzorku záznamu Java v Javě

Jednoduchý způsob, jak přenést linku - je operátor sčítání /n argument řetězec metoda write (), ale tato metoda nebude fungovat v různých operačních systémech. Chcete-li přidat soubor řádek po řádku na různých platformách, musíte použít metodu line.separator třídní systém. Následující příklad ukazuje, jak je tato metoda lineSeparator do proměnné, která pak může být použit ve způsobu argument řetězec write ():

Řetězec lineSeparator = System.getProperty („line.separator“);​​Kód nakonec vypadá jako ten, který je uveden níže.
Výsledkem tohoto kódu je následující: text.txt soubor při startu bude triple line „záznamovým vzorekJava ".

Související publikace