社区
C#
帖子详情
哪个类可以实现文件的拷贝,粘贴,覆盖粘贴等功能
哈哈007哈
2004-04-26 02:17:21
哪个类可以实现文件的拷贝,粘贴,覆盖粘贴等功能
...全文
146
13
打赏
收藏
哪个类可以实现文件的拷贝,粘贴,覆盖粘贴等功能
哪个类可以实现文件的拷贝,粘贴,覆盖粘贴等功能
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
13 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
Edwin380019813
2010-06-11
打赏
举报
回复
Clipboard.SetDataObject(str, true);
marvelstack
2004-04-26
打赏
举报
回复
下面是我写的一个类的其中几个方法,供楼主参考。
using System;
using System.IO;
using System.Xml;
using System.Text;
namespace ZZ
......
/// <summary>
/// 复制指定目录的所有文件
/// </summary>
/// <param name="sourceDir">原始目录</param>
/// <param name="targetDir">目标目录</param>
/// <param name="overWrite">如果为true,覆盖同名文件,否则不覆盖</param>
/// <param name="copyDir">如果为true,包含目录,否则不包含</param>
public static void CopyFiles(string sourceDir,string targetDir,bool overWrite,bool copyDir)
{
string [] fileEntries = Directory.GetFiles(sourceDir);
if(overWrite)
{
foreach(string fileName in fileEntries)
{
File.Copy(fileName,targetDir+fileName.Substring(fileName.LastIndexOf("\\")),true);
//Console.WriteLine(fileName+"-->"+targetDir+fileName.Substring(fileName.LastIndexOf("\\")));
}
}
else
{
foreach(string fileName in fileEntries)
{
if(!File.Exists(targetDir+fileName.Substring(fileName.LastIndexOf("\\"))))
{
File.Copy(fileName,targetDir+fileName.Substring(fileName.LastIndexOf("\\")));
//Console.WriteLine(fileName+"-->"+targetDir+fileName.Substring(fileName.LastIndexOf("\\")));
}
}
}
if(copyDir)
{
foreach(string subDir in Directory.GetDirectories(sourceDir))
{
string newSubDir = targetDir+subDir.Substring(subDir.LastIndexOf("\\"));
if(!Directory.Exists(newSubDir))
Directory.CreateDirectory(newSubDir);
CopyFiles(subDir,newSubDir,overWrite,copyDir);
}
}
}
/// <summary>
/// 剪切指定目录的所有文件
/// </summary>
/// <param name="sourceDir">原始目录</param>
/// <param name="targetDir">目标目录</param>
/// <param name="overWrite">如果为true,覆盖同名文件,否则不覆盖</param>
/// <param name="moveDir">如果为true,包含目录,否则不包含</param>
public static void MoveFiles(string sourceDir,string targetDir,bool overWrite,bool moveDir)
{
string [] fileEntries = Directory.GetFiles(sourceDir);
if(overWrite)
{
foreach(string fileName in fileEntries)
{
if(File.Exists(targetDir+fileName.Substring(fileName.LastIndexOf("\\"))))
File.Delete(targetDir+fileName.Substring(fileName.LastIndexOf("\\")));
File.Move(fileName,targetDir+fileName.Substring(fileName.LastIndexOf("\\")));
//Console.WriteLine(fileName+"-->"+targetDir+fileName.Substring(fileName.LastIndexOf("\\")));
}
}
else
{
foreach(string fileName in fileEntries)
{
if(!File.Exists(targetDir+fileName.Substring(fileName.LastIndexOf("\\"))))
{
File.Move(fileName,targetDir+fileName.Substring(fileName.LastIndexOf("\\")));
//Console.WriteLine(fileName+"-->"+targetDir+fileName.Substring(fileName.LastIndexOf("\\")));
}
}
}
if(moveDir)
{
foreach(string subDir in Directory.GetDirectories(sourceDir))
{
string newSubDir = targetDir+subDir.Substring(subDir.LastIndexOf("\\"));
if(!Directory.Exists(newSubDir))
Directory.CreateDirectory(newSubDir);
MoveFiles(subDir,newSubDir,overWrite,moveDir);
Directory.Delete(subDir);
}
}
}
/// <summary>
/// 删除指定目录的所有文件
/// </summary>
/// <param name="targetDir">操作目录</param>
/// <param name="delSubDir">如果为true,包含目录,否则不包含</param>
public static void DeleteFiles(string targetDir,bool delSubDir)
{
foreach(string fileName in Directory.GetFiles(targetDir))
{
File.Delete(fileName);
//Console.WriteLine(fileName+" is deleted!");
}
if(delSubDir)
{
DirectoryInfo di = new DirectoryInfo(targetDir);
foreach(DirectoryInfo subDi in di.GetDirectories())
{
subDi.Delete(true);
//Console.WriteLine(subDi.FullName+" is deleted!");
}
}
}
哈哈007哈
2004-04-26
打赏
举报
回复
谢谢]
dahuzizyd
2004-04-26
打赏
举报
回复
http://www.csharphelp.com/archives3/archive551.html
shuhill
2004-04-26
打赏
举报
回复
System.IO .File.Copy(源文件名,目录文件名,是否Overwrite); '拷贝
System.IO.File.Delete(文件名); '删除
coudoufu
2004-04-26
打赏
举报
回复
ClipBoard
实现复制、粘贴、剪切这个比较好
haveaquestion
2004-04-26
打赏
举报
回复
[C#]
public static void Copy(
string sourceFileName,
string destFileName
);
chenyuming2004
2004-04-26
打赏
举报
回复
System.File类
里面有
Copy()
方法实现文件复制。
vcshcn
2004-04-26
打赏
举报
回复
file
哈哈007哈
2004-04-26
打赏
举报
回复
shuhill(蜀山幽狼) :能具体点吗!,谢谢
shuhill
2004-04-26
打赏
举报
回复
System.IO.FileInfo
System.IO
不知道要的是不是这个
greatsft
2004-04-26
打赏
举报
回复
是ClipBoard
比如有个menu_cut,menu_copy,menu_paste菜单
void menu_cut_click(object obj,EventArgs ea){
menu_copy_click(obj,ea);
str=""; //实现剪贴效果
}
void menu_copy_click(object obj,EventArgs ea){
Clipboard.SetDataObject(str,true); //设置剪贴板
}
void menu_paste_click(object obj,EventArgs ea){
IDataObject data=Clipboard.GetDataObject();
if(data.GetDataPresent(typeof(string))) //判断剪贴板中是否有string
str=(string)data.GetData(typeof(string));
}
wish u good luck
Greatsft
thinkingforever
2004-04-26
打赏
举报
回复
gz
使用 Python
实现
复制
粘贴
的
功能
本文详细解释了pandas的pd.read_clipboard函数如何读取用户复制的数据,以及在Windows、macOS和Linux系统上利用ctypes、pywin32、macOS命令和Linuxxclip
实现
复制
粘贴
功能
的代码示例。最后提到了pyperclip模块的使用,它简化了跨平台操作。
vba
拷贝
粘贴
单元格_
粘贴
时忽略空白单元格
本文介绍了一种在Excel中使用VBA进行智能
粘贴
的技巧,该技巧能确保在更新记录时,仅将含有数据的单元格
粘贴
到目标
文件
,避免用空白单元格
覆盖
已有数据。通过使用‘选择性
粘贴
’命令并勾选‘跳过空白’选项,可以有效地防止数据丢失,提高大型
文件
的更新效率。
vim
拷贝
粘贴
总结(p、Shift+Insert、Shift+Ctrl+v)
本文详细介绍了Vim编辑器中的三种
拷贝
粘贴
方式:Vim寄存器、系统选择缓冲区和系统剪切板。讲解了如何查看和使用这些
功能
,包括通过标签保存多次
拷贝
的内容。
Eclipse插件开发
实现
复制
粘贴
剪切
功能
本文介绍如何在基于Eclipse的流程设计器中
实现
复制和
粘贴
功能
,包括配置菜单响应、定义复制
粘贴
动作及注册相关操作。
Vim编辑器和剪贴板进行内容的
拷贝
和
粘贴
本文主要介绍了Vim编辑器和剪贴板进行内容
拷贝
和
粘贴
的方法。根据平台不同分两种情况,若结果含+clipboard,可通过特定命令
实现
复制
粘贴
;若为-clipboard,则需重新安装vim。还介绍了vim寄存器和系统剪贴板的区别,以及相关配置和测试方法。
C#
111,132
社区成员
642,541
社区内容
发帖
与我相关
我的任务
C#
.NET技术 C#
复制链接
扫一扫
分享
社区描述
.NET技术 C#
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
让您成为最强悍的C#开发者
试试用AI创作助手写篇文章吧
+ 用AI写文章