반응형
* VBNET 파일 복사 예제...
전체 소스 코드
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
label3.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 strDestFolder As String = "C:\FileCopy\DEST1"
Dim fi As System.IO.FileInfo = New System.IO.FileInfo(label3.Text)
'fi.Name => 파일 이름 가져오기 즉 복사 할려는 폴더안에 원본 파일 이름과 같은 이름으로 복사 하기 위해...
System.IO.File.Copy(label3.Text, strDestFolder + "\" + fi.Name)
label4.Text = strDestFolder + "\" + fi.Name + " 복사 완료"
End Sub
'=================================================================================================================
Private Sub button3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles button3.Click
Dim ofd As OpenFileDialog = New OpenFileDialog()
If (ofd.ShowDialog() = Windows.Forms.DialogResult.OK) Then
label5.Text = ofd.FileName
End If
End Sub
Private Sub button4_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles button4.Click
Dim strDestFolder As String = "C:\FileCopy\DEST2"
Dim fi As System.IO.FileInfo = New System.IO.FileInfo(label5.Text)
'버퍼 크기...
Dim iBufferSize As Integer = 1024
Dim lSize As Long = 0
'파일 전체 크기...
Dim lTotalSize As Long = fi.Length
'버퍼 사이즈 만큼 바이트 배열 선언
Dim bTmp(iBufferSize) As Byte
pbValue.Minimum = 0
pbValue.Maximum = Convert.ToInt32(lTotalSize)
Dim fsRead As System.IO.FileStream = New System.IO.FileStream(label5.Text, IO.FileMode.Open)
Dim fsWrite As System.IO.FileStream = New System.IO.FileStream(strDestFolder + "\" + fi.Name, IO.FileMode.Create)
While (lSize < lTotalSize)
Dim iLen As Integer = fsRead.Read(bTmp, 0, bTmp.Length)
lSize += iLen
fsWrite.Write(bTmp, 0, iLen)
'진행 상태
pbValue.Value = Convert.ToInt32(lSize)
End While
'파일 연결 해제
pbValue.Value = pbValue.Maximum
fsWrite.Flush()
fsWrite.Close()
fsRead.Close()
label7.Text = strDestFolder + "\" + fi.Name + " 복사 완료"
End Sub
End Class
* 첫번째 방법
* 두번째 방법
[VBNET] 폴더 및 파일, 드라이브 사이즈 (Size) 구하기
[VBNET] File Create Delete Read Write Ex
반응형
'VB.NET Programming' 카테고리의 다른 글
[VBNET] Log File - 로그 파일 작성 예제 (0) | 2019.10.15 |
---|---|
[VBNET] 파일 및 폴더 감시 예제 (FileSystemWatcher) (0) | 2019.10.12 |
[VBNET] 프로그램 중복 실행 방지 (0) | 2019.10.07 |
[VBNET] Delay 함수 (0) | 2019.10.05 |
[VBNET] 폴더 및 파일, 드라이브 사이즈 (Size) 구하기 (0) | 2019.10.03 |