C# 项目06-计算程序运行时间

实现需求

记录程序运行时间,当程序退出后,保存程序运行时间,等下次程序再次启动时,继续记录运行时间

运行环境

Visual Studio 2022

知识点

TimeSpan

表示时间间隔。两个日期之间的差异的 TimeSpan 对象

C# 复制代码
TimeSpan P_TimeSpan;
DateTime G_DateTime = DateTime.Now;
P_TimeSpan = DateTime.Now - G_DateTime;
/*
 P_TimeSpan.Days;时间间隔的天数
 P_TimeSpan.Hours;时间间隔的小时
 P_TimeSpan.Minutes;时间间隔的分钟
 P_TimeSpan.Seconds;时间间隔的分钟
*/

断电保持

本项目用的方法是将数据保存到项目属性中,操作方法如下:

  1. 右键点击项目,然后点击属性

2、在设置中创建对应的变量和数据类型,范围默认为用户

3、利用窗体的FormClosing事件,保存数据

C# 复制代码
        private void Form1_FormClosing(object sender, FormClosingEventArgs e)
        {
            DateTime G_DateTime_Close = DateTime.Now;
            Properties.Settings.Default.RuntimeDays = P_TimeSpan.Days + Properties.Settings.Default.RuntimeDays;
            Properties.Settings.Default.RuntimeHours = P_TimeSpan.Hours + Properties.Settings.Default.RuntimeHours;
            Properties.Settings.Default.RuntimeMinutes = P_TimeSpan.Minutes + Properties.Settings.Default.RuntimeMinutes;
            Properties.Settings.Default.RuntimeSeconds = P_TimeSpan.Seconds + Properties.Settings.Default.RuntimeSeconds;
            Settings.Default.Save();
        }

4、读取数据

C# 复制代码
Properties.Settings.Default.RuntimeDays
Properties.Settings.Default.RuntimeHours
Properties.Settings.Default.RuntimeMinutes
Properties.Settings.Default.RuntimeSeconds

动画演示

相关推荐
想吃火锅10059 小时前
【leetcode】405.数字转换为十六进制数js
开发语言·javascript·ecmascript
专注VB编程开发20年9 小时前
AI 生成C# WinForm 窗体 = 目前就是垃圾
开发语言·人工智能·c#
cfm_29149 小时前
JVM GC垃圾回收初步了解
java·开发语言·jvm
~小先生~9 小时前
Python从入门到放弃(一)
开发语言·python
许彰午10 小时前
17_synchronized关键字深度解析
java·开发语言
z落落10 小时前
C# 泛型接口和泛型类+泛型约束
开发语言·c#
阿正的梦工坊10 小时前
【Rust】02-变量、不可变性与基础类型
开发语言·后端·rust
阿正的梦工坊10 小时前
【Rust】08-集合类型、字符串与迭代器入门
开发语言·rust·c#
FuckPatience10 小时前
C# 使用泛型协变将派生类类型替换为基类类型
开发语言·c#
张忠琳10 小时前
【Go 1.26.4】(Part 1) Go 1.26.4 超深度源码分析 — 总体架构与模块全景
开发语言·golang