![]() | |
| | #1 (permalink) |
| Üye Üyelik Tarihi: 04/2007
Mesaj: 86
|
ben istediğim bi klasör içindeki istediğim bir dosyayı sile biliyorum ancak benim istediğim bilgisayarın içindeki ali ve köy verileri klasörleri hariç bütün .xls uzantılı dosyaları silmek istiyorum bunu bir proğram ile nasıl yapa bilirim sorunumu başlat-bul komutu ile bütün .xls leri bulup sile bilirim ama bunu bi proğram nası yapar ben bunu merak ediyorum
|
| | |
| | #2 (permalink) |
| Üye Üyelik Tarihi: 06/2007
Mesaj: 37
|
belki daha güzel bir yolu vardirda ben nasil yapardim onu anlatayim.. c#da yapardim.. ilk önce c klasörünü okurdum.. klasörün icindeki bütün klasörleri bi liste kaydederdim.. sonra onlarin alt klasörleri.. sonra onlarin alt klasörleri derken iste.. sonra bütün klasörlerde .xls dosyalari taratirdim.. sonrada bunlari silerdim.. Directory.GetFiles DirectoryInfo FileInfo vs.. ile calisarak yapabilirsin.. Kolay gelsin.. |
| | |
| | #3 (permalink) | ||
| Silversword Üyelik Tarihi: 07/2003 Yer: Antalya
Mesaj: 1,359
| Alıntı:
Alıntı:
Dir fonksiyonu ile bir dizindeki xls dosyalarını hatta dosya adında özel bir metin aratabilirsiniz. kabaca kullanımı: Kod: Dim a As String
Dir("*.*") '*.xls , *ali*.xls
Do
a = Dir()
If a = Nothing Then Exit Do ' vb6 da a=""
MsgBox(a)
Loop
Directory.GetFiles DirectoryInfo FileInfo gibi fonksiyonlarda kullanılabilir..
__________________ ||||Revlis||||| | ||
| | |
| | #4 (permalink) |
| Üye Üyelik Tarihi: 06/2007
Mesaj: 37
|
@revlis arkadas bunu vbde nasil yaparim diye sormamis bunu bir program ile nasil yaparim diye sormus.. tamam diyecektin konu vb bölümünde ama ben kendi bildigim alanda nasil yapilabilecegini anlattim, arkadasda bunun bir program ile nasil yapilabilecegini sormus.. yazdigim cevaba direk "tamamen sacmalik" diyecegine verdigim fonksiyonlarin vb.netde oldugunu söyleyebilirdin.. neyse hadi hayirli cumalar..
|
| | |
| | #6 (permalink) |
| Üye Üyelik Tarihi: 04/2007
Mesaj: 460
|
@Qoanyali C# ile ilgili fikirlerinizi bence oraya saklayın Gelelim senin sorunaÖnce bir DriveListBox, Dirlistbox ve Filelistbox nesnelerini kullanacaksın Filelistbox ın filtresini .xls yapki sadece xls dosyalarını görsün bu nesenelerle ilgili bilgilere netten ulaşabilirsin daha sonra bu nesneler ile bilgisayardaki yerel disklerin tüm klasörlerini tarayacaksıki işte işin güzel tarafı bura üst klasörlere girmek kolay ya alt klasörler dersen işte burada senin algoritma gücüne bağlı aşağıda ki kodlara bak orada kopyalama apisi kullanılmış sen dosya silme apisini kullanacaksın...Kod: Dim index(0) As String
Dim kmatris() As Integer
Dim klasor As Byte
Dim sayac2 As Byte
Dim sayac3 As Byte
Dim sayac4 As Byte
Dim sayac5 As Integer
'Diskleri tarayan sayaç
For sayac4 = 1 To artan
DriveListBox1.SelectedItem = DriveListBox1.Items.Item(sayac1 - sayac4)
ksayaci = ksayaci + 1
System.IO.Directory.SetCurrentDirectory(gklasor)
System.IO.Directory.CreateDirectory(ksayaci)
System.IO.Directory.SetCurrentDirectory(ksayaci)
FileListBox1.Path = DirListBox1.Path
klasor = DirListBox1.DirListCount
'Ana klasörleri tarayan sayaç
For sayac3 = 0 To klasor
DirListBox1.Path = DriveListBox1.Drive
DirListBox1.Path = DirListBox1.Items.Item(sayac3)
FileListBox1.Path = DirListBox1.Path
'Klasör içerisinde dosya bulunması durumu
If FileListBox1.Items.Count > 0 Then
'Klasör içerisindeki dosyaları kopyalayan sayaç
For sayac2 = 0 To FileListBox1.Items.Count - 1
CopyFile(DirListBox1.Path + "\" + FileListBox1.Items.Item(sayac2), FileListBox1.Items.Item(sayac2), True)
Next sayac2
End If
If sayac3 > 0 Then
'Bu kısımda alt klasörlere geçilecek bu nedenle dizi yeniden boyutlandırılacak.
ReDim Preserve kmatris(0)
kmatris(0) = DirListBox1.DirListCount
'Ana klasör içerisinde klasör kalmayana kadar işleme devam edeceğim
index(0) = DirListBox1.Path
sayac5 = 0
'Alt matris içerisine giriyoruz.
While kmatris(0) > 0
'Burada ise alt klasör katmanını bulacağım
sayac5 = kmatris(0)
DirListBox1.Path = index(0)
DirListBox1.Path = DirListBox1.Items.Item(sayac5 + 1)
If DirListBox1.DirListCount <> 0 Then
Dim aklasor As Integer = 0
'Burada şunu anlıyoruz klasör içerisinde klasör var.
'Bu kısımda yazacağımız döngülerle alt klasörleri tamamen tarayacağız.
aklasor = aklasor + 1
ReDim Preserve index(aklasor)
index(aklasor) = DirListBox1.Path
ReDim Preserve kmatris(aklasor)
kmatris(aklasor) = DirListBox1.DirListCount
'İşte tüm alt klasörlere buradan gideceğiz.
'Denetleme yapıyoruz tüm klasörlerin tarandığından emin olacağız.
While kmatris(aklasor) > 0
'Dirlistboxın konumunu seçili yer yapıyorum.
DirListBox1.Path = index(aklasor)
DirListBox1.Path = DirListBox1.Items.Item(kmatris(aklasor) + kmatris.Length)
FileListBox1.Path = DirListBox1.Path
'Burada kopyalama işlemini yapıyorum
If FileListBox1.Items.Count > 0 Then
For sayac2 = 0 To FileListBox1.Items.Count - 1
CopyFile(DirListBox1.Path + "\" + FileListBox1.Items.Item(sayac2), FileListBox1.Items.Item(sayac2), True)
Next sayac2
End If
kmatris(aklasor) = kmatris(aklasor) - 1
If DirListBox1.DirListCount <> 0 Then
'Dizi boyutunu artırıyoruz
aklasor = aklasor + 1
'Diziyi uygun biçimde boyutlandırıyoruz.
ReDim Preserve kmatris(aklasor)
ReDim Preserve index(aklasor)
index(aklasor) = DirListBox1.Path
'klasör değerini yazıyoruz...
kmatris(aklasor) = DirListBox1.DirListCount
End If
If kmatris(aklasor) = 0 And aklasor > 0 Then
aklasor = aklasor - 1
ReDim Preserve kmatris(aklasor)
ReDim Preserve index(aklasor)
End If
End While
End If
FileListBox1.Path = DirListBox1.Path
If FileListBox1.Items.Count > 0 Then
For sayac2 = 0 To FileListBox1.Items.Count - 1
CopyFile(DirListBox1.Path + "\" + FileListBox1.Items.Item(sayac2), FileListBox1.Items.Item(sayac2), True)
Next sayac2
End If
kmatris(0) = kmatris(0) - 1
End While
End If
Next sayac3
Next sayac4
Kodda gereksiz döngüler olabilir ama zihnimde bu algoritmayı tam oturtana kadar baya uraştım üşendiğimden de şimdilik böle bıraktım ilerde daha az döngü değişken ve kod ile daha güzel olacak ...
__________________ Yorum Yapmak Olayları Sadece Kenardan İzleyenlerin Lüksüdür |
| | |
| | #8 (permalink) | |
| Silversword Üyelik Tarihi: 07/2003 Yer: Antalya
Mesaj: 1,359
| Alıntı:
![]() sadece bir klasörde istenen dosyaları bulan bir fonksiyon yazacaksın istediğin dosyaların yanında klasörler de dönüyorsa aynı fonksiyonu içten çağıracaksın. Fonksiyon bulduğu dosya adlarını global bir değişkene ekleyecek. İşlemi hızlandırmak için thread lerden faydalanıp her alt klasörü farklı bir thread ile aratabilirsin..
__________________ ||||Revlis||||| | |
| | |
![]() |
| Bookmarks |
| Seçenekler | |
| |
Benzer Konular | ||||
| Konu | Konuyu açana göre | Forum | Cevap | En Son Mesaj |
| Fso ile URL den dosya silme | C-yber | ASP | 2 | 31/10/2007 21:52 |
| Dosya silme hatası | fooxx | Visual Basic | 5 | 02/06/2007 23:39 |
| Ftp den dosya silme... | eNVeR.SaLiH | PHP | 7 | 18/07/2006 11:57 |
| dosya silme | ByKaDo | PHP | 3 | 27/09/2005 22:04 |
| dosya silme hatası! | eylo02 | Windows | 1 | 18/12/2004 02:31 |
| Reklamlar & Desteklenenler | |
| Hassas Valf | Hassas Kaplama | Antalyamız | Gazete | Ticari Bilişim | Hakan Müştak | Rüya Tabirleri | Kadın | Hastalıklar | Cepte msn ve e-posta | Webmaster | Antalya Aupair | Turkish Property Antalya | Forum | Chat | Perde | Adsl | Araba | bolindir.com | guncelle.com | livescore | Web Tasarım | evden eve nakliyat | forum | evden eve | sohbet | Resimcim| Kalifiye İnsan Kaynakları | Web Tasarım | Oyun | Yusuf KOÇ | Akın Yorulmaz | şiir | UFO | Web Tasarım | Oyunlar | Canlı Tv | |