• 创建文件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 MoviePy中文教程导览及可执行音视频剪辑工具下载

    ☞ ░ 前往老猿Python博文目录 ░ <Python音视频剪辑库MoviePy1.0.3中文教程导览及可执行工具下载>是老猿两个关于moviepy的专栏<PyQt+moviepy ...

  2. moviepy简介及安装

    专栏:Python基础教程目录 专栏:使用PyQt开发图形界面Python应用 专栏:PyQt入门学习 老猿Python博文目录 老猿学5G博文目录 一.概述 MoviePy是一个用于视频编辑的Pyt ...

  3. 第11.5节 Python正则表达式搜索任意字符匹配及元字符“.”(点)功能介绍

    在re模块中,任意字符匹配使用"."(点)来表示, 在默认模式下,点匹配除了换行的任意字符.如果指定了搜索标记re.DOTALL ,它将匹配包括换行符的任意字符.关于搜索标记的含义 ...

  4. 第10.5节 使用__all__定义Python模块导入白名单

    一. 引言 <第10.4节 Python模块的弱封装机制>介绍了Python模块的的弱封装机制,除了使用弱封装机制来从一定程度上防止导入特定成员外,Python模块中还提供可另外一种类似白 ...

  5. Nodepad++ 没有TextFX Characters插件

    Nodepad++ 没有TextFX Characters插件 原因:从6.5以上的某个版本开始,就没有了默认的这个插件. 我试了最新的版本下载插件也不行,只好下载一个6.4.5的版本,再更新插件管理 ...

  6. 【补题记录】ZJU-ICPC Summer Training 2020 部分补题记录

    补题地址:https://zjusummer.contest.codeforces.com/ Contents ZJU-ICPC Summer 2020 Contest 1 by Group A Pr ...

  7. 深入理解Java虚拟机(六)——JVM调优分析与实战

    大内存硬件上的程序部署策略 单个虚拟机管理大内存 出现问题 如果JVM中的堆内存太小,就会频繁地出发GC,而每次GC会将用户线程暂停,所以,频繁地GC会导致长时间的停顿.如果扩大计算的内存的大小,就能 ...

  8. vue 表单基本 表单修饰符

    表单的基础 利用v-model进行双向数据绑定: 1.在下拉列表中,将v-model写在select中 2.单选框和复选框需要每个按钮都需要写上v-model 3.v-model在输入框中获取得是输入 ...

  9. spark streaming 消费 kafka入门采坑解决过程

    kafka 服务相关的命令 # 开启kafka的服务器bin/kafka-server-start.sh -daemon config/server.properties &# 创建topic ...

  10. Shiro实现Basic认证

    前言 今天跟小伙伴们分享一个实战内容,使用Spring Boot+Shiro实现一个简单的Http认证. 场景是这样的,我们平时的工作中可能会对外提供一些接口,如果这些接口不做一些安全认证,什么人都可 ...