c# - 想要从数据表日期列中删除时间

标签 c# c#-4.0 date datetime datatable

    DataTable dt = TypeConveriontHelper.ConvretExcelToDataTable(SourceAppFilePath);

    string targetPath = BatchFolderPath + @"\" + "TRANSACT.INX";
    StreamWriter wrtr = null;
    wrtr = new StreamWriter(targetPath);
    for (int x = 0; x < dt.Rows.Count; x++)
    {
        string rowString = "";
        for (int y = 0; y < dt.Columns.Count; y++)
        {
            if (y == dt.Columns.Count - 1)
            {
                rowString += "\"" + dt.Rows[x][y].ToString() + "\"";
            }
            else
            {
                rowString += "\"" + dt.Rows[x][y].ToString() + "\"~";
            }
        }           
        rowString = rowString.Replace("\"", String.Empty).Trim();
        wrtr.WriteLine(rowString);

    }
    wrtr.Close();
    wrtr.Dispose();

数据表返回“日期”列,其中包括时间和日期。但我只需要显示日期。给我一个解决方案。谢谢。

最佳答案

rowString += "\"" + DateTime.Parse(dt.Rows[x][y]).ToString("dd/MM/yyyy") + "\"";

或完全实现如下:

DataTable dt = TypeConveriontHelper.ConvretExcelToDataTable(SourceAppFilePath);

        string targetPath = BatchFolderPath + @"\" + "TRANSACT.INX";
        StreamWriter wrtr = null;
        wrtr = new StreamWriter(targetPath);
        for (int x = 0; x < dt.Rows.Count; x++)
        {
            string rowString = "";
            for (int y = 0; y < dt.Columns.Count; y++)
            {
                string dateTimeString = dt.Rows[x][y].ToString();
                DateTime dateTime;

                if (DateTime.TryParse(dateTimeString, out dateTime))
                {
                    string formattedDate = dateTime.ToString("dd/MM/yyyy");

                    if (y == dt.Columns.Count - 1)
                    {
                        rowString += "\"" + formattedDate + "\"";
                    }
                    else
                    {
                        rowString += "\"" + formattedDate + "\"~";
                    }
                }
            }
            rowString = rowString.Replace("\"", String.Empty).Trim();
            wrtr.WriteLine(rowString);

        }
        wrtr.Close();
        wrtr.Dispose();

就像米歇尔所说的那样,请参阅 http://msdn.microsoft.com/en-us/library/az4se3k1.aspx完整引用

关于c# - 想要从数据表日期列中删除时间,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12742184/

相关文章:

javascript - 日期的 jQuery val 会导致某些日期为空字符串

c# - 在 MVC 5 的 Controller 中访问声明值

c# - Lambda 或 Linq 方法来搜索多个参数

c# - IAudioSessionControl2 出现问题,使 WebBrowser 控件静音

xml - 如何防止 xsd 生成的类被命名为 "NewDataSet"?

C# .Net 4.0 命名参数和默认参数

c# - C#中uint转int的编译时间转换

来自远程计算机的 Mysql 服务器

android - Android 的日期类中的年份不正确

php - 下个星期一在 PHP 中