Vb.net 数据表短日期格式

Vb.net 数据表短日期格式,vb.net,datetime,datatable,Vb.net,Datetime,Datatable,我有一个vb.net数据表 数据由用户输入,因此不涉及SQL表 当我将“2/1/2016”存储到数据表中并将其吐出时,它显示为“2/1/2016 12:00:00 AM” 将此格式设置回“2016年2月1日”的最佳方式是什么 谢谢我发现有一种方法是有效的: Dim table As New DataTable table.Columns.Add("Date", GetType(DateTime)) table.Rows.Add("2/1/2016") Debug.

我有一个vb.net数据表 数据由用户输入,因此不涉及SQL表

当我将“2/1/2016”存储到数据表中并将其吐出时,它显示为“2/1/2016 12:00:00 AM”

将此格式设置回“2016年2月1日”的最佳方式是什么


谢谢

我发现有一种方法是有效的:

    Dim table As New DataTable
    table.Columns.Add("Date", GetType(DateTime))
    table.Rows.Add("2/1/2016")
    Debug.Print(CDate(table.Rows(0)("Date").ToString).ToString("d"))
用户也建议。这也行!谢谢你,先生

Debug.Print(Convert.ToDateTime(table.Rows(0)("Date")).ToShortDateString)
将其转换为“MM/dd/yyyy”


DateTime总是有日期和时间。使用显示机制仅显示日期我尝试使用getType(日期),但我仍然得到“2/1/2016 12:00:00 AM”结构中始终有一个时间元素
Debug.Print(Convert.ToDateTime(table.Rows(0)(“Date”)).toSortDateString)
Yes这很有效!谢谢你,我明白了。它只是字符串表示形式已被更改为仅显示日期部分。这将不会在选项strictHuh下编译…不会在我的电脑上!(VS2013)我得到这个“ToSortDateString”不是“String”的成员。当我尝试“test”时,在即时窗口中输入日期字符串。本文还建议ToSortDateString仅用于日期数据类型。像DGV单元格这样的东西将所有东西都存储为对象,为了使用与基础类型关联的方法,您必须回溯。除非它是隐式处理的,因为VB就是这样工作的。对吗?@clweeks仅在选项Strict关闭的情况下才允许编译器猜测您的意思。这通常是错误的。每周这里有2-3个问题,其中Option Strict Off是罪魁祸首。这并不是为了严肃的节目……或者说答案
    Dim table As New DataTable
    table.Columns.Add("Date", GetType(DateTime))
    table.Rows.Add("2/1/2016")
    Debug.Print(CDate(table.Rows(0)("Date").ToString).ToString("d"))
Debug.Print(Convert.ToDateTime(table.Rows(0)("Date")).ToShortDateString)
CType(table.Rows(0)("Date").ToString, Date).ToShortDateString