使用C#为目录中的每个文件创建特定的项目列表

时间:2017-08-07 13:52:13

标签: c#

我正在尝试为目录中的每个文件创建一个List。每个文件必须具有单独的项目列表。我创建了一个列表,但它显示了所有文件中可用的所有项目。怎么做?在这方面需要帮助。 我这样做,但它显示所有文件中的所有项目“产品”: 一段代码在这里:  列出产品=新列表();

    foreach (string file in fileList)
    {

        using (StreamReader sr = new StreamReader(file))
        {
            string line;
            while ((line = sr.ReadLine()) != null)
            {
                rows++;
                if (line.StartsWith("Product"))
                {
                    var val = line.Split(',');

                    upc = val[1];
                    pName = val[3];

                    products.Add(upc);
                    products.Add(pName);

                    productList = string.Join(",", products.ToArray());

1 个答案:

答案 0 :(得分:0)

添加这些文章

public class ProductFile
{
    public string Name;
    public List<Product> Products = new List<Product>();
}

public class Product
{
    public string Upc;
    public string PName;
}

然后,在你的代码中:

var productFiles = new List<ProductFile>();
foreach (string file in fileList)
{
    var productFile = new ProductFile(){ Name = Path.GetFileName(file) };
    using (StreamReader sr = new StreamReader(file))
    {

        string line;
        while ((line = sr.ReadLine()) != null)
        {
            rows++;
            if (line.StartsWith("Product"))
            {
                var val = line.Split(',');
                var product = new Product()
                {
                    Upc = val[1],
                    PName = val[3]
                };
                productFile.Products.Add(product); //Adds a product
            }
        }
    };
    productFiles.Add(productFile); //Adds a file
}