Ana içeriğe atla

Java Ağ Programlama - 2

Merhaba arkadaşlar. İkinci yazı ile devam ediyoruz. Bu yazıda, bir web sitesine nasıl bağlanacağımızı ve bu siteden gelen kaynak kodlarını nasıl okuyacağımızı göreceğiz. URL tanımlamayı önceki yazıda gördük. Şimdi Bu URL nesnesini kullanarak web sitesine bağlanacağız.

Bunu yapmak için, URLConnection sınıfını kullanacağız. HttpURLConnection sınıfı da var ancak, biz şimdilik bunu kullanacağız. Gerektiği yerde belirteceğim zaten. Şimdi, bir web sitesine bağlanmak için ne yapmamız gerektiğine bakalım.


Bir URL nesnesi tanımlayacağız ve buna URLConnection yardımı ile bağlantı sağlayacağız. Aşağıdaki kodu inceleyelim.




Gördüğünüz gibi, bağlantı yapmak çok basit. Bağlantıyı yaptıktan sonra, baglanti nesnesinin bazı metotlarını kullanabiliriz. Mesela içerik hakkında bilgi alabiliriz. Yada, içeriği yazdırabiliriz. Az önce bağlandığımız örnek sitenin kaynak kodlarını ekrana yazdıralım...




Ekran çıktısı şuna benzer olmalı




Kaynak kodları farklı biçimlerde alarak kullanılabilir hale getirebiliriz. Ancak biz burada işin mantığını anlatmak istediğimiz için, kolay ve kısa olan yolu seçtik. Şimdi, son bir örnek yapalım ve bu yazıya son verelim. IP adresimizi basit bir şekilde bize tek satırlık çıktı olarak veren bir siteden IP adresimizi öğrenip ekrana çıktı olarak vereceğiz. Kodları görelim.




Evet bugünlük bu kadar gençler 😊 bir sonraki yazıda buluşmak üzere...

Yorumlar

Bu blogdaki popüler yayınlar

Python Subprocess

subprocess modülü, yeni bir process oluşturmayı sağlayan, bunların girdi-çıktılarını ele alma imkânı veren ve dönüş kodlarını almayı sağlayan bir modüldür. Yani daha basit bir şekilde, program içinde program çalıştırmaya imkan veren bir modüldür. Subprocess Modülünün Kullanımı subprocess basit bazı process'leri kullanmak için birkaç tane fonksiyon sunuyor. Daha karmaşık bir process çalıştırmak isterseniz, Popen sınıfını kullanabilirsiniz. Bunlara detaylı bir şekilde değinmeye çalışacağız. Şimdi basit fonksiyonları inceleyelim

Infix to postfix dönüşümü

Infix to postfix dönüşümü, operatorün ortada olduğu a+b yazım şeklini operatorün sonda olduğu ab+ yazım şekline dönüştürme işlemidir. Bu yazıda iki şekilde dönüşümden bahsedeceğim:   1) Stack yapısı kullanarak dönüştürme 2) Kağıt üstünde el ile dönüştürme    Infix gösterimi, bizler için kolay bir gösterim olsa da makineler için öyle değildir. İfadeyi okurken a + b * c işleminde önce b ile c yi çarpıp sonra da a ile toplamayı kolay bir şekilde yapabiliriz çünkü bizim ifadeyi sıra ile adım adım giderek okuma zorunluluğumuz yok. Önce b*c nin öncelikle olduğunu görerek oradan başlar, sonra a ile kolayca toplarız.

Java Process Çıktısı Türkçe Karakter Sorunu

Merhaba arkadaşlar. Bildiğiniz gibi Java'da bir process oluşturmak için ProcessBuilder sınıfından yararlanıyoruz. Oluşturduğumuz process eğer çıktı üretiyorsa bu çıktıyı okuyabiliyoruz. Ancak bu çıktı Türkçe karakter içeriyorsa, biz bu çıktıyı okuduğumuz zaman düzgün bir şekilde elde edemiyoruz. Daha doğrusu kodlama Türkçe'ye göre yapılmadığı için (ş,ç,ğ,ı,ü,ö) karakterleri farklı bir şekilde ekranda görüntüleniyor. Öncelikle sorunu gözle görelim ve bunu çözmeye çalışalım. Aşağıda ping atmak üzere yazdığım bir program var. Ping atabilmek için bir process oluşturuyorum ve çıktıları ekrana yazıyorum. İşletim sistemimi Türkçe kullandığım için çıktı da Türkçe ifadeler geçiyor.