• 创建文件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. 第8.19节 使用__doc__访问Python文档字符串(DocStrings )

    __doc__特殊变量用于查看类.函数.模块的帮助信息,这些帮助信息存放在文档字符串中. 一. 关于文档字符串 关于文档字符串前面很多章节提到过,DocStrings 文档字符串用于程序的文档说明,并 ...

  2. 转:Python考核试题及答案

    Python测试(总分:120) 选择题(每题2分,共20分) 1.下列哪个语句在Python中是非法的? (B) A.x = y = z = 1 B.x = (y = z + 1) C.x, y = ...

  3. Asp.NetCore之AutoMapper进阶篇

    应用场景 在上一篇文章--Asp.NetCore之AutoMapper基础篇中我们简单介绍了一些AutoMapper的基础用法以及如何在.NetCore中实现快速开发.我相信用过AutoMapper实 ...

  4. 从零开始的sql注入学习(挖坑不填)

    首先,本人是小白,这篇文章也只是总结了一下大佬们的sql注入方法,要是有错,请各位大佬指出,以便学习. 虽然我是菜鸡,但是太过基础的sql注入问题也就不再重复的解释了.直接从常用的说起. 实战中常用的 ...

  5. NET CORE通过NodeService调用js

    在 .NET Framework 时,我们可以通过V8.NET等组件来运行 JavaScript,不过目前我看了好几个开源组件包括V8.NET都还不支持 .NET Core ,我们如何在 .NET C ...

  6. 剑指offer二刷——数组专题——数字在升序数组中出现的次数

    题目描述 统计一个数字在升序数组中出现的次数. 我的想法 完整的解法我只想到了遍历数组然后依次统计,但这是不聪明的解法,而且没有利用上"升序数组"的这个条件. 题目标签有提醒可以用 ...

  7. 《深入理解计算机系统》实验二 —— Bomb Lab

    这是CSAPP的第二个实验,主要让我们理解代码的机器级表示,最重要的是理解每个寄存器的作用以及如何使用这些寄存器.本次的实验内容有点晦涩难懂,对于这些内容多看下习惯就好了.   本次实验中的bomb文 ...

  8. 题解-CF802C Heidi and Library (hard)

    题面 CF802C Heidi and Library (hard) 有一个大小为 \(k\) 的空书架.有 \(n\) 天和 \(n\) 种书,每天要求书架中有书 \(a_i\).每天可以多次买书, ...

  9. mysql聚簇索引和非聚簇索引

    聚簇索引 InnoDB使用的是聚簇索引 将数据与主键索引放在了一起,索引的叶子节点保存了行数据,找到了主键索引,即找到了行数据. 辅助索引记录了主键的位置,所以查询where name= xxx 时, ...

  10. 容器编排系统k8s之Service资源

    前文我们了解了k8s上的DemonSet.Job和CronJob控制器的相关话题,回顾请参考:https://www.cnblogs.com/qiuhom-1874/p/14157306.html:今 ...