hoat4'ün çözümü çok şık ve basit. Tüm aklı başında ini dosyaları için çalışır . Bununla birlikte, anahtarda kaçışı olmayan boşluk karakterleri olan birçok kişi gördüm .
Bunu çözmek için bir kopyasını indirdim ve değiştirdim java.util.Properties
. Bu biraz alışılmışın dışında ve kısa vadeli olsa da, gerçek modlar sadece birkaç satırdı ve oldukça basitti. JDK topluluğuna değişiklikleri dahil etmek için bir teklif sunacağım.
Dahili bir sınıf değişkeni ekleyerek:
private boolean _spaceCharOn = false;
Anahtar / değer ayırma noktası için tarama ile ilgili işlemleri kontrol ediyorum. Boşluk karakterleri arama kodunu, yukarıdaki değişkenin durumuna bağlı olarak bir boole döndüren küçük bir özel yöntemle değiştirdim.
private boolean isSpaceSeparator(char c) {
if (_spaceCharOn) {
return (c == ' ' || c == '\t' || c == '\f');
} else {
return (c == '\t' || c == '\f');
}
}
Bu yöntem özel yöntem içinde iki yerde kullanılmaktadır load0(...)
.
Bunu açmak için genel bir yöntem de vardır, ancak Properties
alan ayırıcı uygulamanız için bir sorun değilse orijinal sürümünü kullanmak daha iyi olacaktır .
İlgi varsa, kodu dosyama göndermeye istekli olurum IniFile.java
. Her iki sürümüyle de çalışır Properties
.