资源简介
C#实现异步拷贝多个文件到指定的目录,以及数据线程访问ui线程控件的方法。
代码片段和文件信息
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using System.IO;
using System.Threading;
namespace DelegateTest
{
public partial class Form1 : Form
{
FileStream fs = null;
public Form1()
{
InitializeComponent();
}
private void button1_Click(object sender EventArgs e)
{
OpenFileDialog dialog = new OpenFileDialog();
dialog.title = “选定文件“;
dialog.Multiselect = true;
if (dialog.ShowDialog() == DialogResult.OK)
{
string[] filenames = dialog.FileNames;
foreach(string str in filenames)
{
string realname =str.Substring( str.LastIndexOf(‘\\‘)+1);
this.comboBox1.Items.Add(new ComboboxItem(realnamestr));
}
this.comboBox1.SelectedIndex = 0;
}
}
private void button2_Click(object sender EventArgs e)
{
FolderBrowserDialog dialog = new FolderBrowserDialog();
dialog.ShowNewFolderButton = true;
if (dialog.ShowDialog() == DialogResult.OK)
{
this.textBox1.Text = dialog.SelectedPath;
}
}
private void Form1_Load(object sender EventArgs e)
{
Rectangle rect = System.Windows.Forms.SystemInformation.WorkingArea;
this.Left = (rect.Width - this.Width) / 2;
this.Top = (rect.Height - this.Height) / 2;
}
public delegate bool CopyFileToDesPathEventHadler(string[] filenamestring path);
private bool CopyFileToDesPath(string[] filenamestring path)
{
foreach(string str in filename)
{
try
{
FileStream fr = new FileStream(strFileMode.OpenFileAccess.Read);
string realname=str.Substring( str.LastIndexOf(‘\\‘)+1);
FileStream fw = new FileStream(path+“\\“+realnameFileMode.CreateFileAccess.Write);
byte[] buffer = new byte[1024];
int length = fr.Read(buffer0buffer.Length);
while(length!=0)
{
fw.Write(buffer0length);
fw.Flush();
length = fr.Read(buffer0buffer.Length);
}
fr.Close();
fw.Close();
this.SetListBox(str);
Thread.Sleep(2000);
}
catch (Exception e) {
MessageBox.Show(e.ToString());
}
}
return false;
}
publ
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 12288 2012-08-02 14:44 DelegateTest\bin\Debug\DelegateTest.exe
文件 28160 2012-08-02 14:44 DelegateTest\bin\Debug\DelegateTest.pdb
文件 14328 2012-08-06 17:45 DelegateTest\bin\Debug\DelegateTest.vshost.exe
文件 490 2009-06-11 05:14 DelegateTest\bin\Debug\DelegateTest.vshost.exe.manifest
文件 3770 2012-08-01 17:50 DelegateTest\DelegateTest.csproj
文件 4586 2012-08-02 14:44 DelegateTest\Form1.cs
文件 6509 2012-08-02 14:33 DelegateTest\Form1.Designer.cs
文件 5814 2012-08-02 14:33 DelegateTest\Form1.resx
文件 607 2012-08-06 17:45 DelegateTest\obj\Debug\DelegateTest.csproj.FileListAbsolute.txt
文件 847 2012-08-02 14:33 DelegateTest\obj\Debug\DelegateTest.csproj.GenerateResource.Cache
文件 12288 2012-08-02 14:44 DelegateTest\obj\Debug\DelegateTest.exe
文件 180 2012-08-02 14:33 DelegateTest\obj\Debug\DelegateTest.Form1.resources
文件 28160 2012-08-02 14:44 DelegateTest\obj\Debug\DelegateTest.pdb
文件 180 2012-08-01 17:50 DelegateTest\obj\Debug\DelegateTest.Properties.Resources.resources
文件 493 2012-08-01 17:46 DelegateTest\Program.cs
文件 1356 2012-08-01 17:46 DelegateTest\Properties\AssemblyInfo.cs
文件 2874 2012-08-01 17:46 DelegateTest\Properties\Resources.Designer.cs
文件 5612 2012-08-01 17:46 DelegateTest\Properties\Resources.resx
文件 1097 2012-08-01 17:46 DelegateTest\Properties\Settings.Designer.cs
文件 249 2012-08-01 17:46 DelegateTest\Properties\Settings.settings
目录 0 2012-08-02 15:57 DelegateTest\obj\Debug\Refactor
目录 0 2012-08-01 17:46 DelegateTest\obj\Debug\TempPE
目录 0 2012-08-01 17:50 DelegateTest\bin\Debug
目录 0 2012-08-02 15:57 DelegateTest\obj\Debug
目录 0 2012-08-01 17:46 DelegateTest\bin
目录 0 2012-08-01 17:46 DelegateTest\obj
目录 0 2012-08-01 17:46 DelegateTest\Properties
目录 0 2012-08-02 14:44 DelegateTest
----------- --------- ---------- ----- ----
129888 28
............此处省略1个文件信息
相关资源
- 大型比赛竞赛抽签系统 可打印 c# vs
- C#异步操作 异步查询数据库 异步处理
- C#完整的通信代码(点对点点对多同步
- asp.net 2.0 聊天室 长轮询 异步实现
- C# TCP助手异步通讯
- C# Socket多客户端异步通信
- c#异步命名管道以及demo
- C#网络编程UDP广播
- C# 异步 SOCKET 服务和客户端
- c# UDP 局域网异步通讯实现广播,接收
- C# Socket异步通信+通信与界面分离处理
- [免积分]C# Socket 异步双工通讯
- 异步串行串口通讯C#RS232
- C# UDPSocket异步传输文件
- C# TCP异步数据传输
- c# socket 异步通信,一个服务器端和多
- winform 多线程 异步 文件操作(查询、
- Winform DataGridView中利用WebClient异步加载
- Winform C#Socket异步通信
- C#实现Socket编程 (异步通讯解决Tcp粘
- c# scoket异步通信代码
- WPF TreeView递归异步绑定
- C# TCP/IP异步通信
- Loading 动画+数据异步调用多线程
- 如何在WPF应用程序中通过HttpClient调用
- TCP性能测试工具和C#高性能异步Socke
- C# 异步Socket 多人聊天室完整源码
- 使用C#.NET实现FTP文件
- C# winform简单易用的异步加载Loading效果
- UDP异步通讯SocketAsyncEventArgs
评论
共有 条评论