반응형
* VBNET 파일 비교 (File Compare) 예제...
- 사용한 컨트롤 : Label 5개 , Button 3개 , GroupBox 1개
전체 소스 코드
Form1.vb
Public Class Form1
Private Sub button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles button1.Click
'원본 파일 선택...
Dim ofd As OpenFileDialog = New OpenFileDialog()
If ofd.ShowDialog() = Windows.Forms.DialogResult.OK Then
lblSource.Text = ofd.FileName
End If
End Sub
Private Sub button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles button2.Click
'대상 파일 선택...
Dim ofd As OpenFileDialog = New OpenFileDialog()
If ofd.ShowDialog() = Windows.Forms.DialogResult.OK Then
lblDesc.Text = ofd.FileName
End If
End Sub
Private Sub button3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles button3.Click
Dim iFile1byte As Integer
Dim iFile2byte As Integer
Dim fs1 As System.IO.FileStream
Dim fs2 As System.IO.FileStream
'파일 위치 및 이름이 같으면...
If lblSource.Text = lblDesc.Text Then
lblCompare.Text = "같은 파일 입니다."
Return
End If
' Open the two files.
fs1 = New System.IO.FileStream(lblSource.Text, System.IO.FileMode.Open)
fs2 = New System.IO.FileStream(lblDesc.Text, System.IO.FileMode.Open)
'파일 길이 비교...
If fs1.Length <> fs2.Length Then
' Close the file
fs1.Close()
fs2.Close()
' Return false to indicate files are different
lblCompare.Text = "다른 파일 입니다."
Return
End If
Do
'Read one byte from each file.
iFile1byte = fs1.ReadByte()
iFile2byte = fs2.ReadByte()
Loop While ((iFile1byte = iFile2byte) And (iFile1byte <> -1))
' Close the files.
fs1.Close()
fs2.Close()
If (iFile1byte - iFile2byte) = 0 Then
lblCompare.Text = "같은 파일 입니다."
End If
End Sub
End Class
*예제 결과
- 길이 및 읽은 바이트 수가 같으면...
- 파일 위치 및 이름이 같으면...
- 파일 길이 및 이름, 읽은 바이트 수가 다르면...
https://kdsoft-zeros.tistory.com/177
반응형
'VB.NET Programming' 카테고리의 다른 글
[VBNET] [WMI] USB Detect 예제 (0) | 2020.04.06 |
---|---|
[VBNET] [WMI] CPU 클럭 속도 (CurrentClockSpeed) (0) | 2020.04.02 |
[VBNET] 소스코드 동적 컴파일 예제 (0) | 2020.03.27 |
[VBNET] DateTimeFormat - 전역 설정 (0) | 2020.03.26 |
[VBNET] 설치된 닷넷프레임워크 버전 리스트 조회 (0) | 2020.03.24 |