我收到的文件列表,以及文件夾,他們居住在文件夾/文件名列表(字符串) - 只取第一個文件夾中的文件 - 可以通過Linq?
我只能處理1個,在任何階段,每個文件夾的文件 - 並且需要返回每個文件夾中的 第一個文件(這些第一文件進行處理後,他們將從列表因此被移除)
,如果我有輸入:
/Foldername1/OrderNo1.csv
/Foldername2/OrderNo2.csv
/Foldername1/OrderNo3.csv
/Foldername3/OrderNo4.csv
/Foldername2/OrderNo5.csv
它應該返回
/FolderName1/OrderNo1.csv
/FolderName2/OrderNo2.csv
/FolderName3/OrderNo4.csv
public void Main()
{
RunThis();
}
public class Order
{
public string OrderNo;
public int CustomerID;
}
private void RunThis()
{
List<Order> o = new List<Order>()
{
new Order { OrderNo = "/Foldername1/OrderNo1.csv",CustomerID = 1},
new Order { OrderNo = "/Foldername2/OrderNo2.csv",CustomerID = 7},
new Order { OrderNo = "/Foldername1/OrderNo3.csv",CustomerID = 8},
new Order { OrderNo = "/Foldername3/OrderNo4.csv",CustomerID = 12},
new Order { OrderNo = "/Foldername2/OrderNo5.csv",CustomerID = 8},
};
Console.WriteLine(o);
}
經由LINQ的這是可能的,或者僅是有可能通過創建 2個陣列 1.以保持經處理的文件夾 2的列表通過directory name並保持的第一文件的列表中的文件夾
Loop each filename
if processed folder does not contain files Directory Name
add foldername to processedfolders
add file to list of first files
end if
next
輝煌,謝謝大家的幫助 –