C# 打开文件和显示读取的文件内容

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");//显示路径,并且后面的叠加不删除
            }

        }

C# 打开文件和显示读取的文件内容_第1张图片
显示出对应的文件
C# 打开文件和显示读取的文件内容_第2张图片

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#,c#,开发语言,ui)