SORU
13 EKİM 2010, ÇARŞAMBA


Sınıf dizinden kaynaklarının bir listesini almak

Bir yol için verilen sınıf bir dizindeki tüm kaynak adlarının bir listesi, bir şey 0 ** bir yöntem gibi almak için arıyorum.

Örneğin, belirli bir sınıf Dizini x/y/z içeren dosyaları a.html, b.html, c.html ve bir alt d, getResourceNames("x/y/z") dönüş List<String> içeren aşağıdaki dizeleri:['a.html', 'b.html', 'c.html', 'd'].

Dosya sistemi ve kavanozlarda kaynakları her ikisi için de çalışması gerekir.

File, JarFiles s URLs ile hızlı bir parçacık yazabilirim biliyorum, ama tekerleği yeniden icat etmek istemiyorum. Benim sorum getResourceNames uygulamak için en hızlı yolu nedir, kamuya açık mevcut kütüphaneler verilir? Bahar ve Apache Commons yığınlarının her ikisi de mümkün.

CEVAP
13 EKİM 2010, ÇARŞAMBA


Üç çözümleri biliyorum:

1) özel tarayıcı Yazmak, örn. sonrası yukarıdaki gibi.

2) Bahar çerçevesinden PathMatchingResourcePatternResolver

3) yukarıdaki 2 teknikleri eğer sınıf büyük ise zamanında çok yavaş olabilir. Daha hızlı bir çözümdür: http://code.google.com/p/reflections/ - precompiles 'arama zamanı . en hızlı bu yüzden derleme zamanında, sadece

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • iBand IguJoo

    iBand IguJoo

    25 AĞUSTOS 2006
  • Sam Kear

    Sam Kear

    14 Temmuz 2007
  • tsweeney79

    tsweeney79

    21 Ocak 2008