Java split() metodunda kırpmanın önüne geçme

Java’da bir dizgeye split() metodunu uyguladığımız zaman, dizgenin son kısımlarında boş (yani “”) dönmesi gereken alanlar kırpılıyor (“trim” uygulanıyor).

Örneğin aşağıdaki gibi bir dizgemiz olsun.

String degerler = "0|0|0|1|||0|1|0|||";

degerler dizgesini boruya (pipe, “|”) göre split() ettiğimde karakter dizisi içerisinde geriye “0”, “1” yada “” değerleri dönecek.

String[] karakterDizisi = degerler.split("\|"); 

Yukarıdaki kodu uyguladıktan sonra split() metodu en sondaki “0” rakamından sonraki  “|||” kısmını kırpıyor ve boş değerleri listeye dahil etmiyor.  Bu durumda karakterDizisi‘nin uzunluğu 9 dönüyor.

Bu durum String.split(String regex) bağlantısında açıkça belirtilmiş.

Kırpılan alanları da karakter dizisine eklemek istiyorsanız, sınırlama değeri girmelisiniz. Sınırlama değeri  split() metodunun dizgeye kaç defa uygulanacağını belirtir.  split() metodunun kaç defa uygulanacağına dair bir sınır girmek istemiyorsanız eksili bir sayı girmeniz yeterli.

Sınırlama değeri ile kullanmak için sözdizimi şu şekilde: String.split(String regex, int limit)

Örnek olarak;

String[] karakterDizisi = degerler.split("\|", -1); 

Artık karakterDizisi uzunluğunda bir sınır yok ve boş alanlar da listeye dahil. Yukarıdaki kodu uyguladıktan sonra listenin uzunluk değeri 12 dönüyor.

Kaynak: http://stackoverflow.com/questions/14414582/java-split-string-to-array

Sabit diskinizin çıkardığı sese göre arıza tespiti

DataCent isimli profosyonel veri kurtarma hizmeti veren bir şirketin veri kurtarma laboratuvarlarında sabit disklerden çıkan arıza seslerini kaydetmişler ve bu çıkan seslere göre diskin arızasını tanımlamışlar.

Seslerin kaydedildiği sabit disk markaları arasında Western Digital, Seagate, Maxtor, Samsung, Hitachi/IBM, Toshiba, Fujitsu ve Quantum bulunuyor.

Sayfaya aşağıdaki bağlantıya tıklayarak ulaşabilirsiniz

http://datacent.com/hard_drive_sounds.php

Sayfadaki arıza sesleriden birini duyuyorsanız ve hala verilerinize ulaşabiliyorsanız en kısa zamanda verilerinizi yedeklemeniz öneriliyor.

Gnome 3’te kullanıcı resmi bilgileri

Gnome 3 kullanan dağıtımlarda sistemde kullanıcı resmi bilgileri 2 dizinde işleniyor.

Birincisi /var/lib/AccountsService/users
İkincisi /var/lib/AccountsService/icons

/var/lib/AccountsService/users

Dizinin altında her kullanıcı için .desktop dosya yapısına benzer bir metin dosyası mevcut. /var/lib/AccountsService/users/[Kullanıcı Adı] şeklinde tutuluyor. Kurulum esnasındaki tercihlere göre Ubuntu’da ortalama varsayılan olarak şöyle geliyor.

[User]
XSession=ubuntu
XKeyboardLayouts=

Kurulumdan sonra bir kullanıcı resmi belirlersek dosyaya “Icon=” ile başlayan bir satır ekleniyor. Eğer sistemin sunduğu resimlerinden seçerseniz “Icon=” karşısına seçilen resmin yolunu yazar. Başka bir yoldan resim seçerseniz resmi /var/lib/AccountsService/icons dizini altına seçimi yapan kullanıcının ismi ile bir resim dosyası oluşturur (/var/lib/AccountsService/icons/[Kullanıcı Adı] gibi) ve “Icon=” karşısına bu oluşturduğu resmin yolunu yazar.

/var/lib/AccountsService/icons

Seçtiğiniz resim Kullanıcı Hesapları uygulamasındaki sunulanın dışında bir resim ise, uygulama seçilen resmi /var/lib/AccountsService/icons dizini altına, 96×96 piksel boyutuna getirip, seçimi yapan kullanıcı adını dosya ismi olarak kullanarak, png formatına çevirerek atar.

Herhangi bir resim seçtikten sonra users dizini altındaki dosyanın son hali

[User]
XSession=ubuntu
XKeyboardLayouts=
Icon=/var/lib/AccountsService/icons/volkan

Kaynak:
http://askubuntu.com/questions/61637/where-is-the-users-profile-picture-stored-in-gnome-3
http://comments.gmane.org/gmane.comp.gnome.gdm.general/2513