C# 打开文件和显示读取的文件内容
- 1. 打开文件所在的路径
- 2. 根据现有的路径打开文件
- 2.1 提取文件名称
- 3. 打开HEX文件并且转换成bin文件
- 3.1 Hex文件各部分的意义
- 4 C# 打开txt文件,并且写入一些信息
1. 打开文件所在的路径
通过点击按键,打开打开文件的界面,点击后可以在 richTextBox2上显示
private void button1_Click(object sender, EventArgs e)
{
OpenFileDialog dialog = new OpenFileDialog();
dialog.Multiselect = true;//该值确定是否可以选择多个文件
dialog.Title = "请选择文件";
dialog.Filter = "txt格式(*.txt)|*.txt|所有文件|*.*";
if (dialog.ShowDialog() == System.Windows.Forms.DialogResult.OK)
{
string file = dialog.FileName;
richTextBox2.AppendText(file + "\n");//显示路径,并且后面的叠加不删除
}
}
显示出对应的文件
2. 根据现有的路径打开文件
和上部分的代码相比添加了读取文件内容的程序。
private void button1_Click(object sender, EventArgs e)
{
OpenFileDialog dialog = new OpenFileDialog();
dialog.Multiselect = true;//该值确定是否可以选择多个文件
dialog.Title = "请选择文件";
dialog.Filter = "txt格式(*.txt)|*.txt|所有文件|*.*";
if (dialog.ShowDialog() == System.Windows.Forms.DialogResult.OK)
{
string file = dialog.FileName;
richTextBox2.AppendText(file + "\n");//显示路径,并且后面的叠加不删除
//读取文件内容
System.IO.StreamReader sr = new System.IO.StreamReader(file, System.Text.Encoding.Default);
String ls_input = sr.ReadToEnd().TrimStart();
richTextBox2.AppendText(ls_input + "\n");//显示路径,并且后面的叠加不删除
}
}
PS:bug 显示中文乱码,有待改进。
2.1 提取文件名称
file 的文件是显示了全部的文件路径
经过Path.GetFileName处理,path就成为了选中的文件名
最后显示在了label4上面
string file = dialog.FileName;
string path = Path.GetFileName(file); //只获取文件名
string path12 = Path.GetDirectoryName(file);//获取文件路径
3. 打开HEX文件并且转换成bin文件
3.1 Hex文件各部分的意义
HEX文件每行数据都由4部分构成:
起始代码:+数据个数(2字节)+起始地址(4字节)+记录类型(1字节)+数据(N字节)+校验和(1字节)
其中记录类型对应:
00:数据,示例:0B 0010 00 6164647265737320676170 A7
01:文件结束,示例:00 0000 01 FF
02:扩展段地址,示例:02 0000 02 1200 EA
03:起始段地址,示例:04 0000 03 0000 3800 C1
04:扩展线性地址,示例:02 0000 04 FFFF FC
05:起始线性地址,示例:04 0000 05 0000 00CD 2A
可以查看维基百科
4 C# 打开txt文件,并且写入一些信息
private void button2_Click(object sender, EventArgs e)
{
OpenFileDialog dialog = new OpenFileDialog();
dialog.Multiselect = true;//该值确定是否可以选择多个文件
dialog.Title = "请选择文件";
dialog.Filter = "CSV格式(*.csv)|*.csv|txt格式(*.txt)|*.txt|所有文件|*.*";
if (dialog.ShowDialog() == System.Windows.Forms.DialogResult.OK)
{
string file = dialog.FileName;
string FilePath = Path.GetFileName(file); //只获取文件名
string DirectoryPath = Path.GetDirectoryName(file);
richTextBox2.AppendText(file + "\n");//显示路径,并且后面的叠加不删除
richTextBox2.AppendText(DirectoryPath + "\n");//显示路径,并且后面的叠加不删除
//打开文件进行写入,这个部分的代码会请除之前的信息
//FileStream fs = new FileStream(file, FileMode.Open, FileAccess.Write);
//StreamWriter sr = new StreamWriter(fs);
//这个部分的代码,则是在文件的后面增加信息,
StreamWriter sr = new StreamWriter(file, true);
sr.WriteLine("hello1 ! ");//开始写入值
sr.WriteLine("hello2 ! ");//开始写入值
sr.WriteLine("hello3 ! ");//开始写入值
sr.Write("hello233,");
sr.Write("hello233,");
sr.Write("hello233,\n");
sr.Write("hello233,\n");
sr.Write("hello233,\n");
sr.Close();
//fs.Close();
string file2 = DirectoryPath + "/main_" + FilePath;
richTextBox2.AppendText(file2 + "\n");//显示路径,并且后面的叠加不删除
FileStream fs1 = new FileStream(file2, FileMode.OpenOrCreate, FileAccess.Write);//创建写入文件
fs1.Close();
StreamWriter sw = new StreamWriter(file2,true);//这里打开和创建文件分开写,就是为了保证文字作为添加的方式在文本后方加入信息
sw.WriteLine("hello233");//开始写入值
sw.Close();
}
}
更多推荐
C# 打开文件和显示读取的文件内容
发布评论