gpt4 book ai didi

c# - 如何使用 C# 验证 asp.net 中的 csv 文件

转载 作者:行者123 更新时间:2023-12-05 09:22:36 26 4
gpt4 key购买 nike

我正在上传 csv 文件并将数据保存到数据库中。我已经完成了保存部分,但我需要的是使用正确的数据 farmat 验证 csv。

 -----------------------------------------------
Name Address Age Gender
---------------------------------------------
a Hyderabad 23 M
b Banglore 25 F
c Mumbai 26 M
---------------------------------------------
 

csv 文件中的数据在上传时需要采用上述格式。如果他们以以下格式输入数据并尝试上传,则需要显示一条错误消息,提示“上传有效的 CSV 文件”。

 -----------------------------------------------
Name Address (Column Name Is missing) Gender| Column0
--------------------------------------------
a Hyderabad 23 M ( Some Junk Data)
b Banglore 25 F |
c Mumbai 26 M |
---------------------------------------------
 
--------------------------------------------
Xyz olp
 -------------------------------------------
 
 

我用谷歌搜索了很多,但没有找到适合我的问题的有效链接。

最佳答案

没有 Elixir 。通过设计 CSV,如果相当流畅,那么您将无法像验证 xml 文件一样验证它。

但是你可以做一些事情,例如:

 public void ValidateCsv(string fileContents)
{
var fileLines = fileContents.Split(
new string[] { "\r\n", "\n" }, StringSplitOptions.None);

if (fileLines.Count < 2)
//fail - no data row.

ValidateColumnHeader(fileLines[0]);

ValidateRows(fileLines.Skip(1));
}

public bool ValidateColumnHeaders(string header)
{
return header.Trim().Replace(' ','').ToLower() ==
"name,address,age,gender";
}

public bool ValidateRows(IEnumerable<string> rows)
{
foreach(row in rows)
{
var cells = row.Split(',');

//check if the number of cells is correct
if (!cells.Length == 4)
return false;

//ensure gender is correct
if (cells[3] != "M" && cells[3] != "F")
return false;

//perform any additional row checks relevant to your domain
}
}

大部分验证都非常针对您的业务领域,因此您需要自行决定什么是“不良数据”。例如,您可以检查您的 Age 列是否为正数。

关于c# - 如何使用 C# 验证 asp.net 中的 csv 文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25545916/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com