如何编写数组然后执行Remove,Length ...方法?

时间:2016-12-06 23:25:07

标签: c# arrays pipe

我在这方面有点初学者,但我不知道如何编码数组,所以它会让我使用像Trim,StartWith,EndWith,Length这样的方法......

我得到的错误是

List<string> itemDetails does not contain a definition for 'Trim'

(以及StartsWith,EndsWith和Length)。对于第一个删除我正在

No overload method for 'Remove' takes 2 arguments.

删除的第二个实例很好。

我正在尝试删除管道分隔符,使项目显示在列表框中。我还没有为这些项目格式化列表框,但项目的每个细节之间可能会有一个选项卡,每个项目都将在新行上。我也不太确定我开头的代码是否会将我所拥有的代码发送到列表框?如果你看到任何可能有问题的东西......请告诉我!谢谢

private void frmItemFile_Load(object sender, EventArgs e)
    {
        items.Fill();
        FillItemListBox();

        List<string> itemDetails = Arrays.asList( " |15324|Packaged|3.38|Cheerios|General Mills| ",
                                 " |15362|Packaged|3.73|Rolled Oats|Quaker| ",
                                 " |19429|Packaged|12.50|Granulated Sugar|B&H| ",
                                 " |67256|Fresh|1.46|Bananas|Dole| ",
                                 " |63851|Fresh|2.29|Apples|Chelan| " );

        itemDetails = itemDetails.Trim();
        if (itemDetails.StartsWith("|"))
            itemDetails = itemDetails.Remove(0, 1);
        if (itemDetails.EndsWith("|"))
            itemDetails = itemDetails.Remove(itemDetails.Length - 1, 1);

        string[] columns = itemDetails.Split('|');
        string itemNumber = columns[0];
        string type = columns[1];
        string price = columns[2];
        string description = columns[3];
        string manufacturer = columns[4];
    }

1 个答案:

答案 0 :(得分:0)

您需要遍历itemdetails中的每个项目并在其上调用trim方法。

 foreach (Var item in itemdetails)
    {
      item = item.Trim();
            if (item.StartsWith("|"))
                item = item.Remove(0, 1);
            if (item.EndsWith("|"))
                item= item.Remove(itemDetails.Length - 1, 1);
    }