• 创建文件1
private void button1_Click(object sender, EventArgs e)
{
if (textBox1.Text == string.Empty)
{
MessageBox.Show("文件名不能为空");
}
else
{
if (File.Exists(textBox1.Text)) //使用file类的exist方法判断要创建的文件名是否存在
{
MessageBox.Show("文件已经存在");
}
else
{
File.Create(textBox1.Text);//使用file类的create方法创建文件
MessageBox.Show("文件已创建!");
}
}
}
  • 创建文件2
//file类和fileinfo类的区别就是fileinfo需要实例化
private void button1_Click(object sender, EventArgs e)
{
if (textBox1.Text == string.Empty)
{
MessageBox.Show("文件名不能为空");
}
else
{
FileInfo finfo = new FileInfo(textBox1.Text); //实例化Fileinfo类对象
//使用fileinfo类的exit方法判断文件是否存在
if (finfo.Exists)
{
MessageBox.Show("文件名已经存在!");
}
else
{
finfo.Create();//创建文件
MessageBox.Show("文件已经创建");
}
}
}
  • 创建文件夹1
private void btnEnter_Click(object sender, EventArgs e)
{
if (textBox1.Text == string.Empty)
{
MessageBox.Show("文件名不能为空!");
}
else
{
if (Directory.Exists(textBox1.Text)) //使用directory类的Exists的方法判断要创建的文件夹是否存在
{
MessageBox.Show("文件已存在!");
}
else
{
//使用directlory类的CreateDirectory方法创建文件夹
Directory.CreateDirectory(textBox1.Text);
MessageBox.Show("文件已经创建!"); }
}
}
  • 遍历文件夹
private void button1_Click(object sender, EventArgs e)
{
listView1.Items.Clear();//清空listview中的项
if (folderBrowserDialog1.ShowDialog() == DialogResult.OK) //如果打开了对话框控件,而且已经选择好了相应的文件
{
textBox1.Text=folderBrowserDialog1.SelectedPath;
//实例化DirectoryInfo类对象
DirectoryInfo dinfo = new DirectoryInfo(textBox1.Text);
//获取指定目录下所有子目录及文件类型
FileSystemInfo[] fsinfos = dinfo.GetFileSystemInfos();//这是获取文件夹内容的一种方式
foreach (FileSystemInfo fsinfo in fsinfos)
{
if (fsinfo is DirectoryInfo) //判断是否文件夹
{
//使用获取的文件夹名称实例化Directoryinfo对象
DirectoryInfo dirinfo = new DirectoryInfo(fsinfo.FullName);
//为listview控件添加信息
listView1.Items.Add(dirinfo.Name);
listView1.Items[listView1.Items.Count - 1].SubItems.Add(dirinfo.FullName);
listView1.Items[listView1.Items.Count - 1].SubItems.Add("");
listView1.Items[listView1.Items.Count - 1].SubItems.Add(dirinfo.CreationTime.ToShortDateString());
}
else
{
//使用textbox的值实例化fileinfo对象
FileInfo finfo = new FileInfo(fsinfo.FullName);
//为listview控件添加文件信息
listView1.Items.Add(finfo.Name);
listView1.Items[listView1.Items.Count - 1].SubItems.Add(finfo.FullName);
listView1.Items[listView1.Items.Count - 1].SubItems.Add(finfo.Length.ToString());
listView1.Items[listView1.Items.Count - 1].SubItems.Add(finfo.CreationTime.ToShortDateString());
}
}
}
}

  设计界面

  • I/O流操作文本
private void button1_Click(object sender, EventArgs e)
{
if (textBox1.Text == "")
{
MessageBox.Show("要写入的文件不能为空!");
}
else
{
//设置文件的保存格式
saveFileDialog1.Filter = "文本文件(*.txt)|*.txt";
if (saveFileDialog1.ShowDialog() == DialogResult.OK)
{
//使用“另存为”对话框中输入文件名实力化StreamWriter类对象
StreamWriter sw = new StreamWriter(saveFileDialog1.FileName, true);
//想创建的文件中写入内容
sw.WriteLine(textBox1.Text);
//关闭当前的文件写入流
sw.Close();
textBox1.Text = string.Empty;
}
}
} private void button2_Click(object sender, EventArgs e)
{
//设置打开的文件的格式
openFileDialog1.Filter = "文本文件(*.txt)|*.txt";
if (openFileDialog1.ShowDialog() == DialogResult.OK)
{
textBox1.Text = string.Empty;//清空文本框
//使用打开对话框中选择的文件实例化StreamReader对象
StreamReader sr = new StreamReader(openFileDialog1.FileName, true);
//调用ReadToEnd方法读取选中的文件的全部内容
textBox1.Text = sr.ReadToEnd();
//关闭当前的文件流
sr.Close();
}
}

  设计界面:

c#中io常用操作笔记的更多相关文章

  1. javascript中字符串常用操作整理

    javascript中字符串常用操作整理 字符串的操作在js中非常频繁,也非常重要.以往看完书之后都能记得非常清楚,但稍微隔一段时间不用,便会忘得差不多,记性不好是硬伤啊...今天就对字符串的一些常用 ...

  2. javascript中字符串常用操作总结、JS字符串操作大全

    字符串的操作在js中非常频繁,也非常重要.以往看完书之后都能记得非常清楚,但稍微隔一段时间不用,便会忘得差不多,记性不好是硬伤啊...今天就对字符串的一些常用操作做个整理,一者加深印象,二者方便今后温 ...

  3. js--javascript中字符串常用操作总结、JS字符串操作大全

    字符串的操作在js中非常频繁,也非常重要.以往看完书之后都能记得非常清楚,但稍微隔一段时间不用,便会忘得差不多,记性不好是硬伤啊...今天就对字符串的一些常用操作做个整理,一者加深印象,二者方便今后温 ...

  4. javascript中字符串常用操作总结

    String对象属性 (1) length属性 length算是字符串中非常常用的一个属性了,它的功能是获取字符串的长度.当然需要注意的是js中的中文每个汉字也只代表一个字符,这里可能跟其他语言有些不 ...

  5. Stream流的基本介绍以及在工作中的常用操作(去重、排序以及数学运算等)

    平时工作中,我在处理集合的时候,总是会用到各种流操作,但是往往在处理一些较为复杂的集合时,还是会出现无法灵活运用api的场景,这篇文章的目的,主要是为介绍一些工作中使用流时的常用操作,例如去重.排序和 ...

  6. git工作中的常用操作

    上班开始,打开电脑,git pull:拉取git上最新的代码: 编辑代码,准备提交时,git stash:将自己编辑的代码暂存起来,防止git pull时与库中的代码起冲突,否则自己的代码就白敲了: ...

  7. Java中Io流操作-File类的常用操作-创建文件,创建文件夹

    package com.hxzy.IOSer; import java.io.File;import java.io.IOException; public class Demo03 { public ...

  8. git常用操作笔记

    这是我看了廖雪峰的git教程,写的笔记,仅作为一个学习的记录 一.大多数我们面临的是已经有一个进行中的项目了,我们只需克隆下来就可以了 1.安装git,安装完后,可输入git,回车,查看是否已安装 2 ...

  9. CentOS中Mysql常用操作

    安装mysqlyum -y install mysql-server 修改mysql配置vi /etc/my.cnf 这里会有很多需要注意的配置项,后面会有专门的笔记暂时修改一下编码(添加在密码下方) ...

随机推荐

  1. Python中使用f字符串进行字符串格式化的方法

    在<第3.10节 Python强大的字符串格式化新功能:使用format字符串格式化>介绍了使用format进行字符串格式化的方法,在Python 3.6中,如果格式化字符串中的关键字参数 ...

  2. PyQt学习随笔:ListView控件删除一项列表项的方法

    ListView控件可以通过控件对应数据存储删除列表项,具体使用: 数据存储.removeRow(元素索引位置) 删除指定位置的一个列表项. 数据存储如果不知道程序定义的数据存储名,可以通过model ...

  3. <阿里工程师的自我素养>读后感-技术人应该具备的一些基本素质

    一.技术人具备"结构化思维"意味着什么? 1.什么是结构化思维? 结构化思维:逻辑+套路. 表达要有逻辑,所谓逻辑是指我们的结构之间必须是有逻辑关系的. 四种组织思想的逻辑关系 : ...

  4. SQLMap使用指北

    简介 sqlmap是一个开源的渗透测试工具,可以用来进行自动化检测,利用SQL注入漏洞,获取数据库服务器的权限.它具有功能强大的检测引擎,针对各种不同类型数据库的渗透测试的功能选项,包括获取数据库中存 ...

  5. SQL数据库优化的六种方法

    SQL命令因为语法简单.操作高效受到了很多用户的欢迎.但是,SQL命令的效率受到不同的数据库功能的限制,特别是在计算时间方面,再加上语言的高效率也不意味着优化会更容易,所以每个数据库都需要依据实际情况 ...

  6. MyBatis if 标签的坑,居然被我踩到了。。。

    事件的原因是这样的,需求是按条件查数据然后给前端展示就行了,写的时候想着挺简单的,不就是使用 MyBatis 动态 SQL 去查询数据吗? 现实还是很残酷的,等我写完上完 UAT 后,前端同学说根据s ...

  7. 【Luogu P5168】xtq玩魔塔(Kruskal 重构树 & 树状数组 & set)

    Description 给定一个 \(n\) 个顶点,\(m\) 条边的无向联通图,点.边带权. 先有 \(q\) 次修改或询问,每个指令形如 \(\text{opt}\ x\ y\): \(\tex ...

  8. P6007 [USACO20JAN]Springboards G

    本题解仅用与作者加深算法理解,也欢迎大家的阅读 做题背景 原本关于二维的点的 \(dp\) 问题一直都没有什么想法,昨天晚上再做一道 \(cdq\) 的题目的时候被同学询问了这道题,发现可以用二维偏序 ...

  9. C++线程详细说明

    一.问题的提出 编写一个耗时的单线程程序: 新建一个基于对话框的应用程序SingleThread,在主对话框IDD_SINGLETHREAD_DIALOG添加一个按钮,ID为IDC_SLEEP_SIX ...

  10. Numpy的学习2-基础转换

    import numpy as np A = np.arange(2, 14).reshape((3, 4)) # array([[ 2, 3, 4, 5] # [ 6, 7, 8, 9] # [10 ...