当前位置: 首页 > news >正文

VB.Net 2005 WinFrom 文件上传程序...

VB.Net 2005 WinFrom 上传文件程序

程序代码: AppUpdater.vb

Imports System.IO

Public Class AppUpdater

Private Total As Integer = 0

Private FileNumber As Integer = 0

Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click

'Me.ProgressBar1.Maximum = Directory.CreateDirectory(Me.TextBox1.Text).

Dim DirInfo_source As New DirectoryInfo(Me.Tbx_Source.Text)

Total = 0

FileNumber = Me.GetFilesCount(DirInfo_source)

Me.ProgressBar1.Maximum = FileNumber

Me.CopyDirector(Me.Tbx_Source.Text, Me.Tbx_Dest.Text)

End Sub

Public Sub CopyDirector(ByVal SourceDirName As String, ByVal DestdirName As String)

If (Not Directory.Exists(DestdirName)) Then

Directory.CreateDirectory(DestdirName)

File.SetAttributes(DestdirName, File.GetAttributes(SourceDirName))

End If

If (DestdirName(DestdirName.Length - 1) <> Path.DirectorySeparatorChar) Then

DestdirName = DestdirName + Path.DirectorySeparatorChar

Dim files As String() = Directory.GetFiles(SourceDirName)

For Each l_file As String In files

File.Copy(l_file, DestdirName + Path.GetFileName(l_file), True)

File.SetAttributes(DestdirName + Path.GetFileName(l_file), FileAttributes.Normal)

Total = Total + 1

Me.lblStatus.BackColor = Me.ProgressBar1.BackColor

Me.ProgressBar1.Value = Total

If (FileNumber = 0) Then

lblStatus.Text = "已完成 100%"

Else

lblStatus.Text = "已完成 " + (Math.Round(CType((100 * Total / FileNumber), System.Double), 0)).ToString() + "%"

End If

Me.Label_From.Text = l_file

Me.Label_To.Text = DestdirName + Path.GetFileName(l_file)

lblStatus.Refresh()

Label_From.Refresh()

Label_To.Refresh()

Next

Dim dirs As String() = Directory.GetDirectories(SourceDirName)

For Each dir As String In dirs

Me.Refresh()

Me.Focus()

Me.Activate()

CopyDirector(dir, DestdirName + Path.GetFileName(dir))

Next

End If

End Sub

Public Function GetFilesCount(ByVal dirInfo As System.IO.DirectoryInfo) As String

Dim totalFile As Integer = 0

totalFile += dirInfo.GetFiles().Length

For Each subdir As System.IO.DirectoryInfo In dirInfo.GetDirectories

totalFile += GetFilesCount(subdir)

Next

Return totalFile

End Function

End Class

---效果图---

相关文章:

  • 论道谈谈
  • WinDBG 技巧:设断点命令详解(bp, bu, bm, ba 以及bl, bc, bd, be)
  • Auto Complete -- Typeahead 和DateRangePicker
  • 有多少域名被漏掉了?
  • C# Windows Azure Queue的操作
  • 移动设备管理(MDM)与OMA(OTA)DM协议向导(二)——WAP协议(1)
  • Submit disabled Dropdown
  • Validation failed for one or more entities. See 'EntityValidationErrors' property for more details
  • [Windows编程] 如何判断操作系统是64位还是32位
  • 使用Roslyn动态编译和执行
  • 利用Windows7内置功能管理虚拟磁盘
  • 使用cecil 完成 code injection
  • 善用属性
  • SQLServer任意列之间的聚合
  • [编程技巧] 巧用CPU缓存优化代码:数组 vs. 链表
  • 收藏网友的 源程序下载网
  • 5分钟即可掌握的前端高效利器:JavaScript 策略模式
  • const let
  • create-react-app项目添加less配置
  • ERLANG 网工修炼笔记 ---- UDP
  • Java IO学习笔记一
  • Javascript基础之Array数组API
  • Joomla 2.x, 3.x useful code cheatsheet
  • mysql innodb 索引使用指南
  • Promise面试题2实现异步串行执行
  • Vue源码解析(二)Vue的双向绑定讲解及实现
  • vue中实现单选
  • webpack项目中使用grunt监听文件变动自动打包编译
  • Zepto.js源码学习之二
  • 基于Dubbo+ZooKeeper的分布式服务的实现
  • 计算机在识别图像时“看到”了什么?
  • 简单易用的leetcode开发测试工具(npm)
  • 马上搞懂 GeoJSON
  • 猫头鹰的深夜翻译:Java 2D Graphics, 简单的仿射变换
  • 实战:基于Spring Boot快速开发RESTful风格API接口
  • 物联网链路协议
  • 系统认识JavaScript正则表达式
  • 小程序 setData 学问多
  • 小程序开发之路(一)
  • 一份游戏开发学习路线
  • 掌握面试——弹出框的实现(一道题中包含布局/js设计模式)
  • 关于Kubernetes Dashboard漏洞CVE-2018-18264的修复公告
  • ​低代码平台的核心价值与优势
  • # 数论-逆元
  • #HarmonyOS:软件安装window和mac预览Hello World
  • $(document).ready(function(){}), $().ready(function(){})和$(function(){})三者区别
  • (4)事件处理——(2)在页面加载的时候执行任务(Performing tasks on page load)...
  • (Bean工厂的后处理器入门)学习Spring的第七天
  • (Java岗)秋招打卡!一本学历拿下美团、阿里、快手、米哈游offer
  • (react踩过的坑)antd 如何同时获取一个select 的value和 label值
  • (分享)一个图片添加水印的小demo的页面,可自定义样式
  • (蓝桥杯每日一题)平方末尾及补充(常用的字符串函数功能)
  • (原)记一次CentOS7 磁盘空间大小异常的解决过程
  • (转)EXC_BREAKPOINT僵尸错误
  • (转)Scala的“=”符号简介