Atlanta Custom Software Development 

 
   Search        Code/Page
 

User Login
Email

Password

 

Forgot the Password?
Services
» Web Development
» Maintenance
» Data Integration/BI
» Information Management
Programming
  Database
Automation
OS/Networking
Graphics
Links
Tools
» Regular Expr Tester
» Free Tools

CompareFiles - Check whether two files contain the same data

Total Hit ( 3063)

Rate this article:     Poor     Excellent 

 Submit Your Question/Comment about this article

Rating


 



Click here to copy the following block
' compare two files
' return True if they're equal

Function CompareFiles(ByVal file1 As String, ByVal file2 As String) As Boolean
  Dim fnum1 As Integer, isOpen1 As Boolean
  Dim fnum2 As Integer, isopen2 As Boolean
  Dim buffer1 As String, buffer2 As String
  Dim bytesLeft As Long
  
  ' size of the buffer - increase as needed
  Const BUFFERSIZE = 10240
  
  buffer1 = Space$(BUFFERSIZE)
  buffer2 = buffer1
  
  On Error GoTo ExitProc
  
  ' compare the lengths
  ' exit if not equal or if any error
  bytesLeft = FileLen(file1)
  If bytesLeft <> FileLen(file2) Then Exit Function
  
  ' open the first file
  fnum1 = FreeFile
  Open file1 For Binary As #fnum1
  isOpen1 = True
  
  ' open the second file
  fnum2 = FreeFile
  Open file2 For Binary As #fnum2
  isopen2 = True
  
  ' read the entire files in chunks
  
  Do While bytesLeft
    ' don't read more than the residual bytes
    If bytesLeft < Len(buffer1) Then
      buffer1 = Space$(bytesLeft)
      buffer2 = buffer1
    End If
  
    ' read a bunch of bytes from both files
    Get #fnum1, , buffer1
    Get #fnum2, , buffer2
    ' exit if files don't match
    If buffer1 <> buffer2 Then Exit Do
  
    ' evaluate how many bytes are left to read
    bytesLeft = bytesLeft - Len(buffer1)
  Loop
  
  ' if we get here because we read the entire
  ' files, then the two files are equal
  CompareFiles = (bytesLeft = 0)
  
  ' flow through the error handler routine
  ' to close files and exit
  
ExitProc:
  If isOpen1 Then Close #fnum1
  If isopen2 Then Close #fnum2
  ' raise the error in the client code
  If Err Then
    Err.Raise Err.Number, , Err.Description
  End If

End Function


Submitted By : Nayan Patel  (Member Since : 5/26/2004 12:23:06 PM)

Job Description : He is the moderator of this site and currently working as an independent consultant. He works with VB.net/ASP.net, SQL Server and other MS technologies. He is MCSD.net, MCDBA and MCSE. In his free time he likes to watch funny movies and doing oil painting.
View all (893) submissions by this author  (Birth Date : 7/14/1981 )


Home   |  Comment   |  Contact Us   |  Privacy Policy   |  Terms & Conditions   |  BlogsZappySys

© 2008 BinaryWorld LLC. All rights reserved.