C# 文件流的常用方法

// 打开文件选择图片

private void btnChoseImage_Click(object sender, EventArgs e)
{
OpenFileDialog objFiledialog = new OpenFileDialog();
DialogResult result= objFiledialog.ShowDialog();
if (result==DialogResult.OK)
{
this.pbStu.Image = Image.FromFile(objFiledialog.FileName);
}
}

//写入文件
private void btnWriteAll_Click(object sender, EventArgs e)
{
//【1】创建文件流
FileStream fs = new FileStream("C:\\myfile.txt", FileMode.Create);

//【2】创建写入器
StreamWriter sw = new StreamWriter(fs,Encoding.Default);

//【3】以流的方式写入数据
sw.Write(this.txtContent.Text.Trim());

//【4】关闭写入器
sw.Close();

//【5】关闭文件流
fs.Close();
}
//读取文件
private void btnReadAll_Click(object sender, EventArgs e)
{
//【1】创建文件流
FileStream fs = new FileStream("C:\\myfile.txt", FileMode.Open);

//【2】创建读取器
StreamReader sr = new StreamReader(fs, Encoding.Default);

//【3】以流的方式读取数据
this.txtContent.Text = sr.ReadToEnd();

//【4】关闭读取器
sr.Close();

//【5】关闭文件流
fs.Close();
}
//模拟写入系统日志
private void btnWriteLine_Click(object sender, EventArgs e)
{
//【1】创建文件流(文件模式为:追加)
FileStream fs = new FileStream("C:\\myfile.txt", FileMode.Append);

//【2】创建写入器
StreamWriter sw = new StreamWriter(fs);

//【3】以流的方式“逐行”写入数据
sw.WriteLine(DateTime.Now.ToString() + " 文件操作正常!");

//【4】关闭写入器
sw.Close();

//【5】关闭文件流
fs.Close();
}
//删除文件
private void btnDel_Click(object sender, EventArgs e)
{
File.Delete(this.txtFrom.Text.Trim());
}
//复制文件
private void btnCopy_Click(object sender, EventArgs e)
{
if (File.Exists(this.txtTo.Text.Trim())) //首先判断文件是否存在(如果文件存在,直接复制会出现错误)
{
File.Delete(this.txtTo.Text.Trim());//删除文件
}
File.Copy(this.txtFrom.Text.Trim(), this.txtTo.Text.Trim()); //复制文件
}
//移动文件
private void btnRemove_Click(object sender, EventArgs e)
{
//首先判断目标路径文件是否存在(如果文件存在,直接复制会出现错误)
if (File.Exists(this.txtTo.Text.Trim()))
{
File.Delete(this.txtTo.Text.Trim());//删除文件
}
if (File.Exists(this.txtFrom.Text.Trim()))//如果当前文件存在则移动
{
//移动文件
File.Move(this.txtFrom.Text.Trim(), this.txtTo.Text.Trim());
}
else
{
MessageBox.Show("文件不存在!");
}
}
//获取当前目录下的文件
private void btnShowAllFiles_Click(object sender, EventArgs e)
{
string[] files = Directory.GetFiles("C:\\Myfiles");
this.txtContent.Clear();
foreach (string item in files)
{
this.txtContent.Text += item + "\r\n";
}
}
//获取指定目录下的所有子目录
private void btnShowSubDir_Click(object sender, EventArgs e)
{
string[] dirs = Directory.GetDirectories("C:\\Drivers");
this.txtContent.Clear();
foreach (string item in dirs)
{
this.txtContent.Text += item + "\r\n";
}
}

//创建目录
private void btnCreate_Click(object sender, EventArgs e)
{
Directory.CreateDirectory("C:\\Myfiles\\newfiles");
}

//删除指定目录下的所有子目录和文件
private void btnDelAllFiles_Click(object sender, EventArgs e)
{
// Directory.Delete("C:\\Myfiles");//要求目录必须为空

//使用DirectoryInfo对象,可以删除不为空的目录
DirectoryInfo dir = new DirectoryInfo("C:\\Myfiles");
dir.Delete(true);
}

原文地址:https://www.cnblogs.com/victor-huang/p/8338123.html

时间: 2024-11-10 16:33:17

C# 文件流的常用方法的相关文章

【幻化万千戏红尘】qianfengDay20-java基础学习:数据流、随机读取文件流RandomAccessFile

课程回顾: 流:转换流:字符和字节的转换对象流(Object):序列化,反序列化 打印流(Print):打印各种数据类型的数据 今日内容:数据流(Data):支持将基本数据类型写出,字节流,处理流1.DataOutputStream:数据输出字节流常用方法:writeXXX:写出基本数据类型的数据writeUTF:写出字符串2.DataInputStream:数据输入字节流常用方法:readXXX:读取基本数据类型的数据readUTF:读取字符串 随机读取文件类:拥有写出和读取基本数据类型的方法

重定向C库中stdio文件中的printf()函数,文件流-->串口USART1

6.4 一些说明 数据属性可以重写同名的方法属性.这是为了避免在大型系统中产生问题的意外名称冲突.所以用一些减少冲突的常用方法是很有效果的.常用的方法包括:大写字母方法名称,用唯一的字符串来做为数据属性的名称(可以是个下划线_)或者用动词命名方法和用名字命名数据属性. 数据属性就像和对象的普通用户一样可以被方法引用.换句话说,类不能用来实现纯净的数据类型.事实上,在python中不能强制数据隐藏,一切基于约定.(另一方面,如C中写的,python的实现可以做到完全隐藏实现细节并且在必要是可以控制

java 读取文件流

搬运自速学堂:https://www.sxt.cn/Java_jQuery_in_action/ten-iqtechnology.html JAVA中IO流体系: 四大IO抽象类 ·InputStream 此抽象类是表示字节输入流的所有类的父类.InputSteam是一个抽象类,它不可以实例化. 数据的读取需要由它的子类来实现.根据节点的不同,它派生了不同的节点流子类 . 继承自InputSteam的流都是用于向程序中输入数据,且数据的单位为字节(8 bit).       常用方法: int

第十四周总结 Io之文件流

I/O相关 输入/输出 流(数据流动) 数据流动的方向 读数据(输入input) 写数据(输出output) 文件流 字符流 数据流 对象流 网络流.... 1.什么叫文件 一种电脑的存储方式 文件有不同的格式 .txt .doc .ppt .mp4 .jpg .rar ... 文件夹?---目录路径 File是一个类 File----->与电脑上的文件或文件夹产生一 一对应的的映射关系 1.java.io包中 2.文件或目录路径名的抽象表示形式 3.File与真实硬盘中的文件和文件夹 不是一个

C++文件流

文件流:以文件为输入输出对象的流 #include<fstream> 一.文件操作打开一个输入或输出文件 1.打开一个输出文件 ofstream fout; fout.open("1.txt"); 2.打开一个输入文件 ifstream  fin; fin.open("2.txt"); 3.打开一个文件,既可以输入也可以输出 fstream finout: finout.open("3.txt"): 更便捷方式   ofstream

文件流:&quot;fopen&quot;,&quot;fclose&quot;,“ftell”&quot;fseek&quot;,&quot;fgets&quot;,&quot;fprintf&quot; ,“feof”,&quot;fwrite&quot;,&quot;fread&quot;

char const* filename="D:/hello.txt"; "fopen", FILE *fp=fopen(char const *name,char const mode); e.g:FILE *fp = fopen(filename,"wb"); 打开文件流,name为要打开文件的路径,如这里的filename:mode 为对文件的操作模式,通常使用:"wb"(写操作),"rb"(读操作)

C++学习47 文件的概念 文件流类与文件流对象 文件的打开与关闭

迄今为止,我们讨论的输入输出是以系统指定的标准设备(输入设备为键盘,输出设备为显示器)为对象的.在实际应用中,常以磁盘文件作为对象.即从磁盘文件读取数据,将数据输出到磁盘文件.磁盘是计算机的外部存储器,它能够长期保留信息,能读能写,可以刷新重写,方便携带,因而得到广泛使用. 文件(file)是程序设计中一个重要的概念.所谓“文件”,一般指存储在外部介质上数据的集合.一批数据是以文件的形式存放在外部介质(如磁盘.光盘和U盘)上的.操 作系统是以文件为单位对数据进行管理的,也就是说,如果想找存在外部

JAVA学习--文件流FileInputStream和FileOutputStream操作

* 1.流的分类: * 按照数据流向的不同:输入流  输出流 * 按照处理数据的单位的不同:字节流  字符流(处理的文本文件) * 按照角色的不同:节点流(直接作用于文件的)  处理流 *  * 2.IO的体系 * 抽象基类            节点流(文件流)                                缓冲流(处理流的一种) * InputStream        FileInputStream            BufferedInputStream * Outp

编程中的文件流

最近在看JAVA核心技术,本以为想看懂一些文件流,还有一些东西,但是自己没有理解. 这里我在网上总结的一些文件流的知识,希望可以对大家理解有帮助!!    什么是流? 流,简单来说就是建立在面向对象基础上的一种抽象的处理数据的工具.在流中,定义了一些处理数据的基本操作,如读取数据,写入数据等,程序员是对流进行所有操作的,而不用关心流的另一头数据的真正流向.流不但可以处理文件,还可以处理动态内存.网络数据等多种数据形式.如果你对流的操作非常熟练,在程序中利用流的方便性,写起程序会大大提高效率的.