【发布时间】:2022-01-10 10:56:54
【问题描述】:
我在这里的第一个问题。我让自己陷入了一些非常简单的事情。
我已成功读取 csv 并将其解析为数据网格。 我的问题是我有一个数据集,其中一列缺少数据。无法编辑数据集。
我的代码打开并读取然后解析 csv:
private void ContractsToolStripMenuItem_Click(object sender, EventArgs e)
{
DataTable table = new DataTable();
table.Columns.Add("Vehicle ID", typeof(string));
table.Columns.Add("Booked_date_year", typeof(string));
table.Columns.Add("Booked_date_month", typeof(string));
table.Columns.Add("Booked_date_day", typeof(string));
table.Columns.Add("Booked_date_week_number", typeof(string));
table.Columns.Add("Booked_date_day_of_month", typeof(string));
table.Columns.Add("Number of Days Booked", typeof(string));
table.Columns.Add("Booking Status", typeof(string));
table.Columns.Add("Customer Name", typeof(string));
table.Columns.Add("Customer Email", typeof(string));
table.Columns.Add("Customer Telephone", typeof(string));
dataGridView1.DataSource = table;
string[] lines = File.ReadAllLines("*Hiding this filepath as it included my name*");
string[] values;
for (int i = 0; i < lines.Length; i++)
{
values = lines[i].ToString().Split(',');
string[] row = new string[values.Length];
for (int j = 0; j < values.Length; j++)
{
row[j] = values[j].Trim();
}
table.Rows.Add(row);
}
}
我希望能够识别缺失的值,因此在填充我的数据网格时将缺失/替换为默认值。当前结果是客户电话缺少 Booked_date_day 应该是的值。我的目标不是仅仅将 Booked_date_day 识别为缺少值,而是主动检查是否有任何列应该缺少值。
我有一些想法:
-
我将每个值附加到一个数组中,并根据每个值的一些规则检查它,即 Booked_date_month 应该是 Jan、Feb 等月份之一。
-
不是真正的第二个想法(更像是最后的手段),只识别 Booked_date_day 在每一行都有一个空值。 (这是不好的做法,因此我想避免这种情况)
如果您能提供任何帮助,我将不胜感激。在提出问题时,如果有什么我可以做的,也请告诉我! :)
【问题讨论】: