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.
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