Sayfalar

23 Şubat 2012 Perşembe

Java : İnternetten Kaynak Dosyası Okuma ve Türkçe Karakter

Java ile herhangi bir internet sitesinin kaynak kodlarına erişmek mümkün. Ancak bir araştırma yaptığınızda bulduğunuz sonuçlar genelde Türkçe karakterlerde sıkıntı yaratacaktır. Bunun için aşağıdakine benzer bir örnek kullanabilirsiniz.
               URL url = null;
try {
url = new URL(
"http://finelycodes.blogspot.com");
} catch (MalformedURLException e) {
e.printStackTrace();
}
URLConnection u = null;
try {
u = url.openConnection();
} catch (IOException e) {
e.printStackTrace();
}

Reader in = null;

try {
in = new BufferedReader(new InputStreamReader(u.getInputStream(),
"ISO-8859-9"));
} catch (IOException e) {
e.printStackTrace();
}
String totalPage = "";
while (true) {
String line = null;
try {
line = ((BufferedReader) in).readLine();
} catch (IOException e) {
e.printStackTrace();
}
if (line == null)
break;
totalPage += line + "\n";
}

Bu kodda in = new BufferedReader(new InputStreamReader(u.getInputStream(),"ISO-8859-9"));
satırında göründüğü gibi internetten eriştiğimiz kaynak kodunun karakter setini değiştiriyoruz. Türkçe karakter sıkıntısı çektiğimiz için ISO 8859-9 türüne çevirdik. Siz projenize uygun bir şekilde değiştirebilirsiniz bu kısmı. Artık totalPage adlı değişkenimizin içinde sitenin tüm kaynak kodları mevcut.

1 yorum:

  1. Cok tesekkurler hocam, character encoding'le ilgili genelde utf-8 cozumu onerilmis; ancak Turkce karakterlerde ise yaramiyor. ISO kullandigimda sorun cozuldu dediginiz gibi.

    YanıtlaSil