使用C#窗体应用程序实现文件的读取以及文件信息的展示(画点、线)

目录

1、添加命名空间

2、创建控件

3、编写文件内容

4、编写代码

5、注意事项

使用窗体应用程序读取文件的主要步骤:

1、添加命名空间

using System.IO;

2、创建控件

(1)Button1:用于读取文件。

(2)Button2:用于将文件中的内容进行绘制(点)。

(3)Button2:用于将文件中的内容进行绘制(线)。

也可以添加其他控件,例如对文件内容进行展示、显示是否成功读取等,在这里不做介绍。

3、编写文件内容

这里使用空格来区分点的XY左边,空格之前为X值,之后为Y值,每个点之间进行换行,如下图:

4、编写代码

(1)Button1

            string line = "";
            StreamReader sr = new StreamReader("你的文件路径.txt");  // 读取文件所在路径

            if (sr != null)
            {
                label1.Text = "文件读取成功,文件不为空!" + '\n';
                while (!sr.EndOfStream)                          // 判读是否读完
                {
                    line = sr.ReadLine();                    // 读取一行
                    if (line != null)
                    {
                        string[] points = line.Split(' ');       // 拆分当前行
                        foreach (string item in points)          // 转换 string 为 int
                        {
                            //可以自定义的其他操作
                        }
                    }
                }
            }

(2)Button2

Readdata()函数:

        private void Readdata()
        {
            StreamReader str = new StreamReader(filePath);
            string line;
            while ((line = str.ReadLine()) != null)
            {
                label1.Text = "文件读取成功,文件不为空!" + '\n';
                string[] Q = line.Split(' ');
                double x, y;
                x = Convert.ToDouble(Q[0]);
                y = Convert.ToDouble(Q[1]);
                PointF tmp_point = new PointF((float)(x), (float)(y));
                //存入点列
                PointList.Add(tmp_point);
            }
            str.Close();
        }

Button2的Click()事件:

            Readdata();
            Graphics graphics = pictureBox1.CreateGraphics();
            string imgPath = "你的路径Point.png";
            Image image = Image.FromFile(imgPath);
            float num = PointList.Count;
            for (int i = 0; i < num; i++)
            {
                float x = PointList[i].X;
                float y = PointList[i].Y;
                graphics.DrawImage(image, x, y);
            }

(3)Button3

Button3的Click()事件:

            Readdata();
            Graphics graphics = pictureBox1.CreateGraphics();
            Pen pen = new Pen(System.Drawing.Color.AliceBlue, 2);
            float num = PointList.Count;
            for (int i = 0; i < num; i++)
            {
                float x = PointList[i].X;
                float y = PointList[i].Y;

                if (i + 1 < num)
                {
                    graphics.DrawLine(pen, PointList[i], PointList[i + 1]);
                }
                //else
                //{
                //}
            }

5、注意事项

(1)注意添加命名空间,否则无法进行 StreamReader的定义。

(2)读取文件的方法有很多种,本文只介绍了一种。

(3)自定义的文件也可以使用其他方法进行分割,.Split()方法可以对自定义的符号进行字符串的分割。

原创作品,请勿抄袭。

你可能感兴趣的:(c#,开发语言)