物联网工程关键技术一课一得

该代码段展示了使用C#实现的一个简单的模拟停车场系统,包括车辆注册和离场操作。注册时,程序检查车辆信息是否已存在,然后将信息写入本地TXT文件。离场时,程序读取文件,计算停车费用,并更新文件内容。
摘要由CSDN通过智能技术生成

20210320056 陈一鸣

关于这节课程上做的模拟停车场任务做一些分析。

发送命令的部分复制粘贴并修改模板已存在的部分。

 private void button6_Click(object sender, EventArgs e)
        {
            string[] CarData = new string[100];
            int p;

            textBox11.Text = txtInformation.Text;
            textBox12.Text = Convert.ToString(System.DateTime.Now);
            textBox14.Text = Convert.ToString(10000);

            loop:

            if (File.Exists(@"E:\20210320056\HF\停车场信息.txt")==true)
            {
                StreamReader HFSR = new StreamReader(@"E:\20210320056\HF\停车场信息.txt");

                for (p = 0; p < 100; p++)
                {
                    CarData[p] = HFSR.ReadLine();
                }

                HFSR.Close();

                for (p = 0; p < 100; p++)
                {
                    if (CarData[p] == textBox11.Text)
                    {
                        MessageBox.Show("已经注册过了");
                        return;
                    }
                }
            }
            else
            {
                var MyUserData=File.Create(@"E:\20210320056\HF\停车场信息.txt");
                MyUserData.Close();
                goto loop;
            }

            File.AppendAllText(@"E:\20210320056\HF\停车场信息.txt",textBox11.Text + "\r\n");
            File.AppendAllText(@"E:\20210320056\HF\停车场信息.txt",                 System.DateTime.Now.Second + "\r\n");
            File.AppendAllText(@"E:\20210320056\HF\停车场信息.txt", System.DateTime.Now.Minute + "\r\n");
            File.AppendAllText(@"E:\20210320056\HF\停车场信息.txt", System.DateTime.Now.Hour + "\r\n");
            File.AppendAllText(@"E:\20210320056\HF\停车场信息.txt", System.DateTime.Now.Day + "\r\n");
            File.AppendAllText(@"E:\20210320056\HF\停车场信息.txt", System.DateTime.Now.Month + "\r\n");
            File.AppendAllText(@"E:\20210320056\HF\停车场信息.txt", System.DateTime.Now.Year + "\r\n");
            File.AppendAllText(@"E:\20210320056\HF\停车场信息.txt",  textBox14.Text + "\r\n");
        }

上面这段是注册命令发送,获取信息并一行一行的写入一个本地TXT文档,判断注册卡号是否已经存在。

 private void button7_Click_1(object sender, EventArgs e)
        {
            string[] CarData = new string[100];
            int p;

            double TimeCount;
            double Money = 0;
            textBox11.Text = "";
            textBox11.Text = txtInformation.Text;

            StreamReader HFSR = new StreamReader(@"E:\20210320056\HF\停车场信息.txt");

            for (p = 0; p < 100; p++)
            {
                CarData[p] = HFSR.ReadLine();
            }

            HFSR.Close();

            for (p = 0; p < 100; p++)
            {
                int k = 0;
                int a = 0;
                if (CarData[p] == textBox11.Text)
                {
                    TimeCount = System.DateTime.Now.Second + (System.DateTime.Now.Minute * 60) + (System.DateTime.Now.Hour * 60 * 60) +
                                (System.DateTime.Now.Day * 24 * 60 * 60);

                    Money = (TimeCount - (Convert.ToDouble(CarData[p + 1]) + (Convert.ToDouble(CarData[p + 2]) * 60) + (Convert.ToDouble(CarData[p + 3]) * 60 * 60) +
                                (Convert.ToDouble(CarData[p + 4]) * 24 * 60 * 60))) * 2;

                    textBox12.Text = Convert.ToString(System.DateTime.Now);
                    label23.Text = Convert.ToString(Money) + "元";
                    textBox14.Text = Convert.ToString((Convert.ToDouble(CarData[p + 7]) - Money));
                    textBox13.Text = Convert.ToString(Money / 2) + "秒";

                    File.WriteAllText(@"E:\20210320056\HF\停车场信息.txt",String.Empty);

                    for (k = 0; k < 100; k++)
                    {
                        if (k!=p && k != p+1 && k != p + 2 && k != p + 3 && k != p + 4 && k != p + 5 && k != p + 6 && k != p + 7)
                        {
                            File.AppendAllText(@"E:\20210320056\HF\停车场信息.txt", CarData[k] + "\r\n");
                            if (CarData[k] ==null)
                            {
                                return;
                            }
                        }
                    }
                }
                if(p>=99)
                {
                    MessageBox.Show("你没注册!");
                }
            }
        }

这段是离场,一行一行读取然后组合时间来依次判断。

从这节课我主要是学到了新的实现方法,对于卡的工作原理并没有太了解。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值