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

  • FF Radio

    FF Radio

    16 Mayıs 2008
  • KittiesMama

    KittiesMama

    10 AĞUSTOS 2008
  • super1988guy

    super1988guy

    9 Aralık 2007