BASKALE.NETGOO

BASKALE.NETGOO

BLUE-MOON-HACKERTEAM
 
AnasayfaAnasayfa  GaleriGaleri  Üye ListesiÜye Listesi  Kullanıcı GruplarıKullanıcı Grupları  Kayıt OlKayıt Ol  Giriş yapGiriş yap  
Arama
 
 

Sonuç :
 
Rechercher çıkıntı araştırma
En son konular
» Delphi Derleyicileri Başlığı
Paz Şub. 20, 2011 12:53 am tarafından byhuysuz

» Modemi hızlandırma
C.tesi Şub. 19, 2011 2:17 pm tarafından byhuysuz

» Visual Studio 2010 Yükle Sadece [10mb]
C.tesi Şub. 19, 2011 12:16 pm tarafından byhuysuz

» Adobe'nin Bütün Versiyonları İçin Crack
Salı Şub. 15, 2011 9:25 pm tarafından byhuysuz

» 1st javascript Editor Professional Edition v5.1 | 8.11 Mb
Salı Şub. 08, 2011 3:35 pm tarafından byhuysuz

» 30 Sn'de [Pc Çökertme + Panzehir]
Ptsi Şub. 07, 2011 4:13 pm tarafından byhuysuz

» Java Görsel Eğitim Seti
Ptsi Ağus. 09, 2010 9:32 pm tarafından admin

» Programlamaya Nereden Baslamali?
Ptsi Ağus. 09, 2010 9:30 pm tarafından admin

» C / C++ E-Book Paylaşımı
Ptsi Ağus. 09, 2010 9:29 pm tarafından admin

» C dilinde basit bir mayın tarlası programı
Ptsi Ağus. 09, 2010 9:05 pm tarafından admin

» Delphi 7 Katılımsız Full | 150mb |
Ptsi Ağus. 09, 2010 8:58 pm tarafından admin

» Delphi 1
Ptsi Ağus. 09, 2010 8:57 pm tarafından admin

» İnternetle İlgili Doğru Sanılan Efsaneler
Ptsi Ağus. 09, 2010 8:54 pm tarafından admin

» Tek Tip Şarj Cihazı Dönemi Başlıyor ..
Ptsi Ağus. 09, 2010 8:53 pm tarafından admin

» Türk mucitten 7 boyutlu sinema
Ptsi Ağus. 09, 2010 8:52 pm tarafından admin

» Schrödinger’in Kedisi | Hem Ölü Hem Canlı
Ptsi Ağus. 09, 2010 8:51 pm tarafından admin

» Win Vista Püf Noktaları ve Optimizasyon
Ptsi Ağus. 09, 2010 8:48 pm tarafından admin

» Bölüm İndex
Ptsi Ağus. 09, 2010 8:47 pm tarafından admin

» Win 7 Püf Noktaları ve Optimizasyon
Ptsi Ağus. 09, 2010 8:45 pm tarafından admin

» Win Xp Püf Noktaları ve Optimizasyon
Ptsi Ağus. 09, 2010 8:44 pm tarafından admin

» Yeni Güvenlik Uygulamalarımız (2010)
Ptsi Ağus. 09, 2010 8:43 pm tarafından admin

» Önemli Olan Güvenlik İse?
Ptsi Ağus. 09, 2010 8:42 pm tarafından admin

» Perl ve Python Exploit Bilgisi (Bug-Res)
Ptsi Ağus. 09, 2010 8:41 pm tarafından admin

» Sonu Olmayan Bir Hack Dökümanı Bug-Res
Ptsi Ağus. 09, 2010 8:40 pm tarafından admin

» Hacking Interface Kitabı - X-Master
Ptsi Ağus. 09, 2010 8:38 pm tarafından admin

» Bug Nedir? Nasıl Oluşur/Bulunur? Bug-Res
Ptsi Ağus. 09, 2010 8:37 pm tarafından admin

» Gerçek Pc Hızlandırma(Uçak Gibi)
Cuma Ağus. 06, 2010 8:46 pm tarafından admin

» 50 Adet Hack Videosu Türkçe [Videolar]
Cuma Ağus. 06, 2010 8:45 pm tarafından admin

» İndexinize Bilgisayarınızdan Arka Plan Müziği||Mr.SoLucaN
Cuma Ağus. 06, 2010 8:44 pm tarafından admin

» Hatırlamadığınız Şifreyi Kırın! 2010
Cuma Ağus. 06, 2010 8:41 pm tarafından admin

» Adsl Hack - Adsl Hackleme - Adls Hack 2010
Cuma Ağus. 06, 2010 8:01 pm tarafından admin

» 2009 Full Anti-Virus Programları
Cuma Ağus. 06, 2010 7:58 pm tarafından admin

Giriş yap
Kullanıcı Adı:
Şifre:
Beni hatırla: 
:: Şifremi unuttum

Paylaş | 
 

 Delphi ASP.NET - Bir Klasörün İçindeki Dosyaları Listelemek.

Önceki başlık Sonraki başlık Aşağa gitmek 
YazarMesaj
admin
spyajan
spyajan
avatar

Aktiflik :
0 / 9990 / 999

Mesaj Sayısı : 1028
Yaş : 27
Kayıt tarihi : 23/07/08

MesajKonu: Delphi ASP.NET - Bir Klasörün İçindeki Dosyaları Listelemek.   Çarş. Tem. 30, 2008 1:08 pm

Her şeyi veri tabanında saklayıp, lazım olunca ısıtıp yerim diyerek kasmışımdır. Bazen öyle zamanlar oluyor ki kaynak paylaşımı için bir klasör yeterli olabiliyor. Örneğin elinizde bir sürü resim var. Veya ilgili ilgisiz bir sürü dosya, mp3 vs. Bunları ziyaretçilerinizle paylaşmak istiyorsunuz. Uzun uzadıya tüm dosya isimlerini tek tek elleyerek linklemek, hele dosya sayısı yüzlerceyse bu işi manuelleyip yapmak oldukça zor. .NET kütüphanesi bu ve benzer konularda çok büyük kolaylık sağlayan fonksiyonlarla bezenmiş halde. Bu yazıda belirli bir klasörün içindeki dosyaların listelenmesi ve uygun link bağlantılarıyla gösterilmesinden bahsedeceğim.

Aşağıdaki yöntemi dikkatlice inceleyelim. Bu fonksiyonu kullanabilmek için uses bildirimine System.IO uzay adını eklemeliyiz.

function DosyaListesi(Klasor,RewUrl : String;Mask:String=''):String;
Var
DListesi : Array of String;
Yol : String;
i : Integer;
S : String;
DosyaAdi : String;
begin
//RewURL default.aspx?modul=banka&kaynak=delphi&dosya=xxxxx şeklinde gelir
//Mask * ? kullanılacak şekilde dosya adını içerebilir...
Yol := Klasor+'\';
if Mask <> '' then
DListesi := Directory.GetFiles(Yol,Mask)
else
DListesi := Directory.GetFiles(Yol);

S := '';
For i:=0 to High(DListesi) do
begin
DListesi[i] := DListesi[i].Remove(0,Yol.Length);
DosyaAdi := Copy(Path.GetFileName(DListesi[i]),1,(DListesi[i].Length-4));
S := S+'<a href="'+RewURL+'&dosya='+DListesi[i]+'" target="_blank" class="menulink">'+SifirEkle(Convert.ToString(i+1),4)+'.&nbsp;&nbsp;&nbsp;'+DosyaAdi+'</a>';
end;
if S = '' then
S := '<b>'+Mask+'</b>&nbsp; Aranan Kaynak Eşlemesine Rastlanmadı...';

Result := S;
end;

Fonksiyon 3 adet parametre alıyor...

Klasor : Dosya listesinin alınacağı kaynak klasörü
RewURL: Linkleme işlemi için başlangıç adresini
Mask : Listeleme işleminde dikkate alınacak dosya adı filitrelemesi *.mdb gibi mesela...

Fonksiyon listeleme için kaynağın YOL değişkenine atanmasıyla başlıyor...Aslında atama yerine direkt parametreyide kullanabilirdim, fakat olası hata aramalarında test işlemi için içeriği listelenecek klasörü bir değişkene atamayı uygun gördüm.

Yol bilgisi alındıktan sonra, maskeleme (joker karakter) kullanımına bağlı olarak ilgili klasörün içeriği string tipinde bir dinamik diziye atanıyor.... Aslında tüm işlemi bu satırla hallediyoruz sayılır... Diziye dosya listesini atamak için Directory.GetFiles fonksiyonunu kullanıyoruz. Şekilde görüldüğü gibi en az bir en çok iki parametre alıyor.

Yol := Klasor+'\';
if Mask <> '' then
DListesi := Directory.GetFiles(Yol,Mask)
else
DListesi := Directory.GetFiles(Yol);

Fonksiyonda tanımlı DListesi dinamik string dizisi dosya isimlerini yol bilgisiyle birlikte aldığından bir for döngüsüyle dosya adını yol bilgisinden tasnif ediyoruz. Hazır tasnifi yaparkende bağlantı ifadelerini ve fonksiyondan geri dönecek string değerinide (S) ayarlıyoruz...

For i:=0 to High(DListesi) do
begin
DListesi[i] := DListesi[i].Remove(0,Yol.Length);
DosyaAdi := Copy(Path.GetFileName(DListesi[i]),1,(DListesi[i].Length-4));
S := S+'<a href="'+RewURL+'&dosya='+DListesi[i]+'" target="_blank" class="menulink">'+SifirEkle(Convert.ToString(i+1),4)+'.&nbsp;&nbsp;&nbsp;'+DosyaAdi+'</a>';
end;

Geriye sonucu döndürmek kalıyor...Sonucuda dosya listesinin durumuna göre ayarlıyoruz. Kritere uygun dosya yoksa uygun yanıt dönüyor.

if S = '' then
S := '<b>'+Mask+'</b>&nbsp; Aranan Kaynak Eşlemesine Rastlanmadı...';

Result := S;

Fonksiyonu aşağıdaki gibi bir web sayfasında örneğin bir Label bileşeninin text özelliğine atayarak kullanabiliriz.

Label1.Text := DosyaListesi(Server.MapPath(ayarlar.DosyaUploadKlasoru+'\'+kaynak),'default.aspx?modul=banka&op=ac&kaynak='+Kaynak,Aranan);
Sayfa başına dön Aşağa gitmek
Kullanıcı profilini gör http://baskale.netgoo.org
 
Delphi ASP.NET - Bir Klasörün İçindeki Dosyaları Listelemek.
Önceki başlık Sonraki başlık Sayfa başına dön 
1 sayfadaki 1 sayfası
 Similar topics
-
» dosyalarım kayboluyor.

Bu forumun müsaadesi var:Bu forumdaki mesajlara cevap veremezsiniz
BASKALE.NETGOO :: PROGRAM DİLLERİ (giriş) :: Delphi/Delphi.Net-
Buraya geçin: