SORU
5 Kasım 2008, ÇARŞAMBA


nasıl erişim dosyası için engellendi kolayca kontrol edebilirsiniz .NET?

Temelde, ben mi kontrol edin eğer ben hak dosyayı açmak için önce ben aslında denemek için açık; ben kullanmak istemiyorum bir try/catch için bu onay sürece var. Teslim etmeden önce kontrol edebilirim dosya erişim özelliği var mı?

CEVAP
5 Kasım 2008, ÇARŞAMBA


Geçmişte bunu defalarca yaptım ve yaptığım neredeyse her zaman yanlış bile teşebbüs ettim.

İzinleri (hatta varlığı dosya) dosyauçucu&; herhangi bir zamanda değiştirebilirsiniz -. Murphy kanunları sayesinde buözellikleonay dosyası arasında ne zaman ve açmaya çalıştığınızda kısa dönem içerir. Bu değişim ilk önce kontrol etmek gerekir nerede biliyor eğer bir bölgede iseniz daha yüksektir. Henüz yeterince garip bir şekilde hiç adil statik olma eğilimindedir hangi Test ve geliştirme ortamlarında olacak. Bu sorun daha sonra izlemek için zor yapar ve hata bu tür üretim haline getirmek için kolaylaştırır.

Bu ne demek hala dosya izinleri veya varlığını kötüyse dışında ele almak mümkün, check rağmen olmak zorunda. Özel durum işleme kodugerekliya önceden dosya izinlerini kontrol edin olmasın. Özel durum işleme kodu sağlartümvarlığı veya izinlerini denetler işlevselliği. Bu gibi özel durum işleyicileri yavaş olduğu bilinmektedir iken ayrıca, önemli disk G/Ç bile daha yavaş... ... olduğunu unutmayınçokyavaş... ve çağrılıyor .() İşlevi var veya kontrol izinleri dosya sistemi ek bir gezi zorlar.

Özet olarak, dosyayı açmak için denemeden önce ilk kontrol hem gereksiz ve savurgan. Yok Ek teminat üzerinden istisna işleme, gerçekten acıyor, yardım et, performans, ekler maliyet açısından daha fazla kod olmalı bakımlı ve tanıtmak ince hataların içine kodu. İlk kontrol yapmak için hiç de olamadım. Bunun yerine, doğru olanı sadece dosyayı açmak ve eğer başarısız olursa, iyi bir özel durum işleyici içine çaba koymak için çalışmaktır. Aynı şekilde eğer sadece dosyanın var olup olmadığını kontrol ediyorsan bile geçerlidir. Bu mantık için geçerlidirherhangi birgeçici kaynak.

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

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • AFISHAL

    AFISHAL

    7 Mart 2009
  • David Tedeyev

    David Tedeye

    20 AĞUSTOS 2011
  • How It Should Have Ended

    How It Shoul

    5 Mart 2007