FileOutputStream önceki derste açıkladığımız gibi OutputStream classını extends ediyor yani bu class ile biz bir dosyaya veri yazıyoruz.Hemen bir dosya oluşturalım.Ben hemen masaüstüne myName.txt adlı bir dosya oluşturuyorum./home/j2guar/Desktop/myName.txt içerisini de boş bırakıyorum.Bunun içerisine Junior Yazılım yazmak istiyorum bunun için FileOutputStream classını kullanacam hemen yapalım örneğimizi.Ve arkadaşlar bi methodumuz da var buna da değinelim File classında , eğer ki bizim myName.txt adlı dosyamız yoksa bunu kendisi oluştursun istiyorum.Örneğe bakalım...
import java.io.*;
public class MyFile {
<span style="color:#cc7832">public static void </span><span style="color:#ffc66d">main</span>(String[] args) {
File file = <span style="color:#cc7832">new </span>File(<span style="color:#6a8759">"/home/j2guar/Desktop/myName.txt"</span>)<span style="color:#cc7832">;
try {
// eğer ki böyle bir dosya yoksa kendisi oluşturacak.
if(!file.exists()){
file.createNewFile();
}
OutputStream outputStream = new FileOutputStream(file);
String myName = "Junior Yazilim";
// myName Stringimin byte dönüştürüp alıyorum
byte[] myNameBytes = myName.getBytes();
// streamlar bytelardan oluşur demiştik o yüzden byte çeviriyorum ve bu akışımı dosyaya yazıyorum
outputStream.write(myNameBytes);
// yazma bittikten sonra akış yerini temizliyorum
outputStream.flush();
// akışı kapatıyorum.
outputStream.close();
}catch(IOException e){
e.printStackTrace();
}
}
}
Junior Yazilim yazmamızın sebebi UTF-8 desteklemiyor FileOutputStream bunu daha gelişmiş OutputStreamları anlatırken yazıcam..
Dosyanın içerisine baksanız çıktıyı
Junior Yazilim
olarak görürsünüz.
Yukarıdaki örneğe ve yorumlara bakın işte bu kadar :) Şimdi yazdığımızı FileInputStream ile okuyalım.
import java.io.*;
public class MyFile {
<span style="color:#cc7832">public static void </span><span style="color:#ffc66d">main</span>(String[] args) {
File file = <span style="color:#cc7832">new </span>File(<span style="color:#6a8759">"/home/j2guar/Desktop/myName.txt"</span>)<span style="color:#cc7832">;
try (InputStream inputStream = new FileInputStream(file)){
int i;
while((i=inputStream.read())!=-1){
System.out.print((char) i);
}
}catch(IOException e){
e.printStackTrace();
}
}
}
Console çıktımız da :
Junior Yazilim
Umarım açıklayıcı bir ders olmuştur sonraki derste görüşmek üzere :)