当前位置: 首页 > 知识库问答 >
问题:

C#将日期和时间格式拆分为Datatable

毕富
2023-03-14

我有一个带有服务器日志的CSV。我需要拆分日期/时间格式作为附加的图像到我的DataTable。

CSV txt文件示例

10.115.10.74-[20/mar/2016:03:38:14+0800]“Get/portal/images/banners/iot.jpg http/1.1”404 918“http://www.utem.edu.my/portal/”Mozilla/5.0(Windows NT 6.3;WOW64;RV:45.0)Gecko/20100101 Firefox/45.0“

到目前为止我所尝试的

string[] raw_text = System.IO.File.ReadAllLines("C:\\log4.csv");

string[] data_col = null;

int x = 0;
foreach (string text_line in raw_text)
{
    //MessageBox.Show(text_line);
    data_col = text_line.Split(' ', '<', '>', '[', ']', '-', '"', ';', '(', ')', '+', ':');


    if (x == 1)
    {
        for (int i = 0; i <= data_col.Count() - 1; i++)
        {
            my_datatable.Columns.Add(data_col[i]);
        }

        x++;
    }
    else
    {

        my_datatable.Rows.Add(data_col);
    }

共有1个答案

井洲
2023-03-14

检查下面的代码。我希望能有所帮助

        string[] raw_text = System.IO.File.ReadAllLines("C:\\log4.csv");
        string[] data_col = null;

        int x = 0;

        foreach (string text_line in raw_text)
        {
            //MessageBox.Show(text_line);
            data_col = text_line.Split(' ', '<', '>', '[', ']', '-', '"', ';', '(', ')', '+', ':');


            if (x == 1)
            {
                for (int i = 0; i <= data_col.Count() - 1; i++)
                {
                        my_datatable.Columns.Add(data_col[i]);
                        my_datatable.Columns.Add(Convert.ToDateTime(data_col[i]).ToString("ddMMMyyyy"));

                        my_datatable.Columns.Add(Convert.ToDateTime(data_col[i]).ToString("HH:mm tt"));

                         my_datatable.Columns.Add(Convert.ToDateTime(data_col[i]).ToString("zzz"));

                        my_datatable.Columns.Add(data_col[i]);
                }

                x++;
            }
            else
            {

                my_datatable.Rows.Add(data_col);
            }
 类似资料:
  • 我有一个方法可以生成一个随机的日期和时间。 打印输出类似于 我见过几个这样的问题和页面,但他们没有给我一个线索。

  • 下表显示可用于为图表中的日期时间字段创建用户定义的数据格式的说明符。 说明符 描述 D 将日显示为不带前导零的数字(1-31)。 DD 将日显示为带前导零的数字(01-31)。 M 将月份显示为不带前导零的数字(1-12)。 MM 将月份显示为带前导零的数字(01-12)。 MMM 将月份显示为缩写形式(Jan-Dec)。 MMMM 将月份显示为完整月份名(January-December)。 Y

  • 下表显示可用于为图表中的日期时间字段创建用户定义的数据格式的说明符。 说明符 描述 D 将日显示为不带前导零的数字(1-31)。 DD 将日显示为带前导零的数字(01-31)。 M 将月份显示为不带前导零的数字(1-12)。 MM 将月份显示为带前导零的数字(01-12)。 MMM 将月份显示为缩写形式(Jan-Dec)。 MMMM 将月份显示为完整月份名(January-December)。 Y

  • 下表显示可用于为图表中的日期时间字段创建用户定义的数据格式的说明符。 说明符 描述 D 将日显示为不带前导零的数字(1-31)。 DD 将日显示为带前导零的数字(01-31)。 M 将月份显示为不带前导零的数字(1-12)。 MM 将月份显示为带前导零的数字(01-12)。 MMM 将月份显示为缩写形式(Jan-Dec)。 MMMM 将月份显示为完整月份名(January-December)。 Y

  • 问题内容: 我从服务器获得的时间就像 。 我想将其转换为。 我还希望转换后的时间为24小时格式。任何人都可以解决这个问题。我想得到的输出就像 问题答案: 试试这个:

  • 我需要使用php将日期时间插入到oracle表中。 我的日期字符串是这种格式: 当我在php中使用这种格式时, $date1=to_date('2013-10-22 08:02:30','YYYY-MM-DD HH24: MI: SS') 我看到oracle表中的数据是PM格式的。这怎么可能?我如何更改to\u日期,以便任何时间12都是上午,任何时间12点及以上都是下午?