【VB.NET机房重构】时间格式
2015-06-20 11:03
190 查看
一直没太仔细的看这个时间获取问题,因为每次都成功的获取了一些东西并且填充在相应的数据库字段中,今天把这个字段伸展开,发现了这么一个哭笑不得的问题。
完了,不认真,所以所有有关获取日期时间的字段都是这个问题。开始解决吧。
观察得知,月份和分钟保持高度的一致,原来问题再这儿。查看代码,
worklogentity.LoginTime = Format(Now, "yyyy-mm-dd hh:mm:ss")
我试了试,将日期改为大写的MM,这就成功了;然后想着应该标出“PM”或者用24小时制的,于是又尝试将小时改成“HH”,结果又成功了。 worklogentity.LoginTime = Format(Now, "yyyy-MM-dd HH:mm:ss") 真真是歪打正着啊。
第一版机房的时候,日期和时间是分开的,所以没出现这个问题,既然遇到了就好好查查吧。
1、时间格式:
“HH”是24小时制的,“hh”是12小时制的,“MM”是月份,“mm”是分钟。
“H”是1个字符的,如1:50,“yyyy”指的是“2015”,“yy”指的是“15”,其他同理。
2、时间段的获取:
①单纯的年月日或者时分秒比较简单,直接获取就可以了
③年月日 时分秒:
Dim time As TimeSpan '定义类型为TimeSpan类型的变量,表示获取的时间差,格式为 时:分:秒 Dim logintime As System.DateTime '定义类型为DateTime的时间变量,将实体中上机时间获取并转换成DateTime类型 logintime = DateTime.Parse(linelogentity.LoginTime) '将两个时间做差,获取时间段time time = logintime.Subtract(DateTime.Now) 'DateTime.Now表示DateTime类型的当前时间,即下机时间 txtSpendTime.Text = time.Duration.TotalMinutes.ToString() '将时间差转换为分钟形式,赋值给文本框 txtSpendTime.Text = CInt(txtSpendTime.Text) '将文本框中的数据取整 linelogentity.SpendTime = txtSpendTime.Text '将最终结果传给实体层3、用DateTimePicker控件查询日期
一定要注意格式的一致性。我的数据库设置的是yyyy-MM-dd HH:mm:ss的,所以从DateTimePicker控件中获取然后传给实体层的也必须是这个格式的,具体格式转换代码如下:
'从Datetimepicker控件中获取的日期的格式设置为数据库中的格式“yyyy-MM-dd” DateTimePicker1.Format = DateTimePickerFormat.Custom DateTimePicker1.CustomFormat = "yyyy-MM-dd" DateTimePicker2.Format = DateTimePickerFormat.Custom DateTimePicker2.CustomFormat = "yyyy-MM-dd" '将DateTimePicker中的数据传给实体层 rechargelogentity.Time = DateTimePicker1.Text rechargelogentity.EndTime = DateTimePicker2.Text小结:
时间这块儿的问题主要就是一致,从U层取得数据的格式和存到数据库中的格式保持一致就可以了,当然一些关于时间的基本知识也是必须了解的。推荐以下博客:/article/1978072.html
http://blog.csdn.net/bigheadsheep/article/details/12013267
相关文章推荐
- 在VBA中调用winsock控件
- VBA创建文件夹
- Vbox全屏问题
- 【请教】VLC 0.9.4中的VLCPlugin1控件为什么不显示视频?
- 如何通过VB6.0编程的方式获取百度贴吧帐号的BDUSS
- Excel VBA TextBox控件的滚动条不能刷新
- powerdesigner vba 创建表和列
- 运行vb写的程序,有些电脑上会弹出一个与office相关的窗口
- VB.net学习笔记(十四) 反射、多态
- 变量、数组、集合、泛型的发展
- VB 6.0 - the first day
- VB 里常用的延时方法
- VB Strings
- VB Structures
- VB|xp风格:终于解决了“图片优化软件”在部分xp系统上无法启动的问题。
- VB: 再次使用的体会
- Vb.net/VB 声明API功能父窗口功能
- 【VB】删除MSHFlexGrid控件中一行(机房问题)
- 【VB】MDI子窗体显示(机房问题)
- 【VB】打开原机房(机房问题)