如何验证文本文件中的列?

时间:2018-02-22 06:14:10

标签: datagridview text-files

是否可以根据文本文件验证列?

这是我的myOrderArray = ["Name", "Address1", "Address2", "City", "State", "Zip Code", "Formatted Address"]; myUnsortedArray = { Name: "kd", State: "test", Address1: "tt" }; function sortArrayByArray( unsortedArray, orderArray ) { let sortedArray = {}; for ( var i = 0; i < orderArray.length; i++ ) { if ( orderArray[i] in unsortedArray ) { sortedArray[orderArray[i]] = unsortedArray[orderArray[i]]; } } return sortedArray; } mySortedArray = sortArrayByArray( myUnsortedArray, myOrderArray ); console.log( mySortedArray );

enter image description here

我想要做的是从.txt文件验证KPI列

enter image description here

我们可以看到,记事本包含四个项目。

  1. 收入
  2. 销售量
  3. Gross Con
  4. Brand Con
  5. 如果用户输入除此之外的任何内容,则会显示错误。说&#34; _____________无效&#34;。

    我目前使用的是:

    DataGridView

    我想验证.txt文件中的列。

2 个答案:

答案 0 :(得分:1)

您可以使用包含所有字符串键的枚举,然后遍历每一行和每个枚举元素。

您可以使用以下方法迭代枚举:

foreach (DatagridViewRow row in dataGridView.Rows)
{
    foreach (Code code in Enum.GetValues(typeof(Code)))
    {            
      if(!row.Cells["KPI"].Value.ToString().Contains(code)) 
          sb.AppendLine(dataGridView.Rows[i].Cells["KPI"].Value.ToString() + " is **NOT** Valid.");
    }
}

如果您有重复项,也可以使用foreach (var suit in ((Suit[])Enum.GetValues(typeof(Suit))).Distinct()))

答案 1 :(得分:0)

使用此方法进行管理。

    List<string> fields = new List<string>();

        var lines = File.ReadAllLines(@"\\SMITSHOME01\Home_Folder_1$\vhernandez\My Documents\Visual Studio 2013\validate.txt");
        for (int i = 0; i < lines.Length; i++)
        {
            fields.Add(lines[i]);
        }