Windowsforms 中对话框,流、文件操作
2024-08-27 12:52:28
对话框:
1、颜色选择控件——ColorDialog
//显示颜色选择器 colorDialog1.ShowDialog(); //把取到的颜色赋值给panel panel1.BackColor = colorDialog1.Color;
2、文件夹选择控件——FolderBrowserDialog
//显示文件夹选择器
folderBrowserDialog1.ShowDialog();
//把取到的文件夹用label1显示
label1.Text = folderBrowserDialog1.SelectedPath;
3、字体样式选择控件——FontDialog
//显示出来
fontDialog1.ShowDialog();
//选用字体样式改变label1字体样式
label1.Font = fontDialog1.Font;
4、文件选择控件——openFileDialog
//设置打开类型的文件
openFileDialog1.Filter = "文本文件|*.txt|所有文件|*.*";
//显示
DialogResult dr = openFileDialog1.ShowDialog();
//取值
if (dr == DialogResult.OK)
{
label3.Text = openFileDialog1.FileName;
}
5、保存路径选择控件——saveFileDialog
saveFileDialog1.ShowDialog();
label1.Text = saveFileDialog1.FileName;
二、流 (I/O)输入输出流
分类:文件流,内存流,网络流
需要引用命名空间——using system .IO;
二进制转换需要的命名空间——using system .Text;
FileStream:文件流——一般用第三个重载方法
三个参数:1、路径2、打开模式3、访问方式
FileStream stream = new FileStream(@"d:\文件名.类型"(路径),FileMode.Creat(打开模式),FileAccess.Read(只读));
第二个参数:
- CreateNew ——指定操作系统应创建新文件,如果文件存在则引发异常。
- Create——指定操作系统创建新文件,如果文件已存在则覆盖之。
- OPen——指定 操作系统应打开现有文件,如果文件不存在则抛出异常。
- OpenOrCreate——指定操作系统应打开文件,如果文件不存在则创建之。
- Truncate——指定操作系统打开现有文件,如果文件已存在则清空,从Truncate打开的文件中读取将引发异常。
- Append——若文件存在,则找到文件并找到文件结尾,或者创建一个新文件。
第三个参数:
- Read 对文件的读访问,拥有读取权限。
- Write 对文件的写访问,拥有写入权限。
- ReadWrite 对文件的读访问和写访问,拥有读取和写入两个权限。
属性:
- Length:流的长度
- Position:流的当前位置,探测光标的当前位置
用法:
1、读文件:
//显示工具
DialogResult dr = openFileDialog1.ShowDialog();
//取值
if (dr == DialogResult.OK)
{
//文件路径
string path = openFileDialog1.FileName;
//造文件流
FileStream fs = new FileStream(path,FileMode.Open);
//造一个二进制数组,用来存储读到的数据
byte[] sj = new byte[fs.Length];
//将文件读取为二进制数据,放到二进制数组里面
fs.Read(sj,,sj.Length);
//将二进制数据转为字符串
richTextBox1.Text = Encoding.Default.GetString(sj);
//关闭流
fs.Close();
}
2、写文件:
//显示选择文件对话框
DialogResult dr = saveFileDialog1.ShowDialog();
//取路径
if (dr == DialogResult.OK)
{
//文件路径
string path = saveFileDialog1.FileName;
//取出文本框中的内容
string nr = richTextBox1.Text;
//将字符串转为二进制数组
byte[] sj = Encoding.Default.GetBytes(nr);
//造一个文件流
FileStream fs = new FileStream(path,FileMode.Create);
//向文件里面写数据
fs.Write(sj,,sj.Length);
//关闭流
fs.Close();
}
3、StreamWrite类:
//取文件路径
string path = saveFileDialog1.FileName;
//打开文件流
FileStream fs = new FileStream(path,FileMode.Create,FileAccess.Write); //第一种方式,使用流
StreamWriter sw = new StreamWriter(fs,Encoding.Default);
//第二种方式,不使用流
StreamWriter sw = new StreamWriter(path,true,Encoding.Default); //将字符串写入文件
sw.Write(richTextBox1.Text); //关闭
sw.Close();
fs.Close();
StreamRead类:
//取文件路径
string path = saveFileDialog1.FileName;
//打开文件流
FileStream fs = new FileStream(path,FileMode.Create,FileAccess.Write);
//第一种方式,使用流
StreamReader sr = new StreamReader(fs,Encoding.Default); //第二种方式,不使用流
//StreamReader sr = new StreamReader(path,Encoding.Default); //读一行
richTextBox1.Text = sr.ReadLine();
//读所有
richTextBox1.Text = sr.ReadToEnd();
//关闭
sr.Close();
最新文章
- vector定义初始化
- TeamWork-天气美食
- css3实现小黄人
- 2014 Super Training #2 C Robotruck --单调队列优化DP
- 【HTTP协议】响应头中的Content-Length和Transfer-Encoding
- 【转载】Sencha Touch 提高篇 组件选择器
- 分享一段H264视频和AAC音频的RTP封包代码
- Gym 100507C	Zhenya moves from parents (线段树)
- UVa 10214 (莫比乌斯反演 or 欧拉函数) Trees in a Wood.
- 在浏览器中使用jquery取得iframe中页面中指定元素的值的不同
- windows 与Linux 互传文件
- MongoDB[mark]总忘记它们是干啥的
- python dbhelper(simple orm)
- BZOJ 4518 [Sdoi2016]征途(分治DP)
- hdu2413(二分+二分匹配)
- 通过chrome浏览器分析网页加载时间
- pycharm-2018.1.6永久激活(本人使用的是centos7)
- 在单文件组件中,引入安装模块里的css的2种方式:script中引入、style中引入
- 《算法》第四章部分程序 part 11
- mysql数据库给局域网用户所有的权限
热门文章
- 吉哥系列故事——完美队形II(hdu4513+Manacher)
- android 自己主动拒接后再取消自己主动拒接,该联系人来电界面无图标显示,且点击挂断无反应
- 嵌入式开发之davinci---DM8168 8127 8148 HDVPSS中的一些英文缩写解释
- ranlib
- Lightoj 1007 - Mathematically Hard
- hta+vbs+js+div+css (javascript是原生态的)
- iOS 7 present/dismiss转场动画
- BZOJ1854:游戏(二分图匹配)
- AutoIT: 对文件系统的菜单进行操作,有专门的语句WinMenuSelectItem
- Python基础第八天