User Tag List
VB.NET'te karşılaştırmalı dosya silme nasıl oluyor?
Programlama forumunda VB.NET'te karşılaştırmalı dosya silme nasıl oluyor? konusunu incelemektesiniz.
İstediğim bir klasörün içinde çok sayıda dosya var birde database'de bir sütunda birçok dosya adı var dizindeki dosyaların her birini database'deki dosya adlarıyla karşılaştırıp eğer burda adı yoksa silinmesini istiyorum ...
-
12-02-2012 09:18 #1
VB.NET'te karşılaştırmalı dosya silme nasıl oluyor?
İstediğim bir klasörün içinde çok sayıda dosya var birde database'de bir sütunda birçok dosya adı var dizindeki dosyaların her birini database'deki dosya adlarıyla karşılaştırıp eğer burda adı yoksa silinmesini istiyorum
.MDB DOSYASINDA ADI BULUNMAYAN DOSYALARIN KLASÖRÜN İÇİNDEN SİLİMESİNİ İSTİYORUMKod:Private Sub Button1_Click(sender As System.Object, e As System.EventArgs) Handles Button1.Click Dim da = New OleDbDataAdapter Dim cmd As New OleDbCommand Dim dr As OleDbDataReader If (cn.State = ConnectionState.Closed) Then cn.Open() cmd = New OleDbCommand("Select resim from Kisiler ", cn) dr = cmd.ExecuteReader() Dim dizin As New IO.DirectoryInfo(Application.StartupPath & "\Resimler") If dizin.Exists = True Then Dim dizindekidosyalar As IO.FileInfo() = dizin.GetFiles("*.jpg") Dim dosyaadı As IO.FileInfo '****************************************************************** For Each dosyaadı In dizindekidosyalar '====================================== While dr.Read If dosyaadı.ToString = dr(0).ToString Then MsgBox(dosyaadı.ToString & " Bu dosya Var" & dr(0).ToString) Else MsgBox(dosyaadı.ToString & " Bu Dosya Yok " & dr(0).ToString) ' File.Delete(Application.StartupPath & "\Resimler\" & dosyaadı.ToString) End If End While '====================================== Next '****************************************************************** cn.Close() End If End Sub
kodu nasıl düzeltmem gerekli
-
12-02-2012 10:19 #2
Kodu düzeltmekle uğraşamam ama ben olsam şöyle bir mantıkla olaya yaklaşırdım, ilk önce klasördeki dosyaların adlarını bir listeye alırdım, daha sonra MDB içinden kayıtları okuyup olanları listeden çıkartırdım, ardından da listede kalan dosyaları sildirirdim
-
12-02-2012 12:27 #3
Demesi kolayda denklemi kuramıyorum istediğin şey aşağıda dosyalistesi 'ne dosya adlarını doldurdum
mdbisimlistesi 'nede MDB dosyasında yazan dosya adlarını doldurdum şimdi elde iki tane liste var
Kod:Private Sub Button1_Click(sender As System.Object, e As System.EventArgs) Handles Button1.Click Dim da = New OleDbDataAdapter Dim cmd As New OleDbCommand Dim dr As OleDbDataReader If (cn.State = ConnectionState.Closed) Then cn.Open() cmd = New OleDbCommand("Select resim from Kisiler ", cn) dr = cmd.ExecuteReader() Dim dizin As New IO.DirectoryInfo(Application.StartupPath & "\Resimler") If dizin.Exists = True Then Dim dizindekidosyalar As IO.FileInfo() = dizin.GetFiles("*.jpg") Dim dosyaadı As IO.FileInfo '****************************************************************** '*************** İLGİLENECEĞİNİZ KODLAR AŞAĞIDAKİLERDİR ***************** '******************** YUKARIDAKİLERE BAKMAYIN ************************ '****************************************************************** ' BURDA BİLGİLERİ LİSTEYE DOLDURDUM Dim dosyalistesi As New List(Of String) Dim mdbisimlistesi As New List(Of String) '****************************************************************** For Each dosyaadı In dizindekidosyalar dosyalistesi.Add(dosyaadı.ToString) Next '****************************************************************** While dr.Read mdbisimlistesi.Add(dr(0)) End While '****************************************************************** cn.Close() End If End Sub
-
12-02-2012 12:30 #4
tamam işte
dosyalistesi'ndeki her kaydı tek tekmdbisimlistesi'nin verileri ile tara olanları kaldır. ta ki tarama sırasında hiç bir veri çıkarılmayıp döngü sonlanana kadar. daha sonra da dosya listesindeki verileri diskten sildir...
-
12-02-2012 18:31 #5
- Üyelik tarihi
- Jul 2011
- Mesajlar
- 48
Böyle birşey herhalde anlatmaya çalıştığınız
Kod:Private Sub Button1_Click(sender As System.Object, e As System.EventArgs) Handles Button1.Click Dim da = New OleDbDataAdapter Dim cmd As New OleDbCommand Dim dr As OleDbDataReader Dim cn As OleDb.OleDbConnection = New OleDbConnection("Provider=Microsoft.ACE.OLEDB.12.0;Data Source=C:\Temp\Database1.accdb") Dim Flag As Boolean = False If (cn.State = ConnectionState.Closed) Then cn.Open() cmd = New OleDbCommand("Select resim from Kisiler ", cn) dr = cmd.ExecuteReader() Dim dizin As New IO.DirectoryInfo("C:\Temp") If dizin.Exists = True Then Dim dizindekidosyalar As IO.FileInfo() = dizin.GetFiles("*.txt") Dim dosyaadı As IO.FileInfo '****************************************************************** Dim FindData As String = "" For Each dosyaadı In dizindekidosyalar '====================================== While dr.Read FindData = dr.GetString(0).ToString Flag = False For Each File As IO.FileInfo In dizindekidosyalar If LCase(File.FullName) = LCase(FindData) Then Flag = True Exit For End If Next If Flag = True Then MsgBox("Dosya bulundu...") 'İşlem gerçekleştir Else MsgBox("Dosya Bulunamadı") 'işlem gerçekleştir End If End While '====================================== Next '****************************************************************** cn.Close() End If End Sub
Konu Bilgileri
Bu konuyu görüntüleyenler
Şu an 1 kullanıcı var. (0 üye ve 1 konuk)
Benzer Konular
-
Dosya Silme
Fantoma - forum Diğer Yazılım KonularıCevaplar: 10Son Mesaj: 14-08-2010, 00:10 -
Arkadaslar bu nasil oluyor yardim
yazici77 - forum İnternet HaberleriCevaplar: 12Son Mesaj: 27-04-2010, 23:50 -
Bu sorunu nasıl aşabiliriz(dosya silme)
engin_er - forum Windows 7Cevaplar: 7Son Mesaj: 15-09-2009, 17:29 -
İki bilgisayardan bir birbirine dosya paylasimi nasil oluyor
catli42 - forum Diğer Yazılım KonularıCevaplar: 0Son Mesaj: 07-12-2008, 13:48 -
iki bilgisayardan bir birbirine dosya paylasimi nasil oluyor
catli42 - forum İnternet HaberleriCevaplar: 0Son Mesaj: 07-12-2008, 13:48



Alıntı

Sanırım sakura deniyor bu ağaçlara.. Meyve vermeyen kiraz ağacı cinsi.. Ya koredir, ya japonya, yada çin :) bulana kadar üçünüde gezecez galiba :D
Günün Fotoğrafı