0
我有一個存儲一些信息的數組。Array.IndexOf 2個匹配值c#
我搜索這個數組使用此代碼的第一列匹配:
int i = Array.IndexOf(ARRAY, ARRAY.Where(x => x.Contains(VALUE)).FirstOrDefault());
但我想要做的是找到的第一個值和第二個值相匹配的索引。
像這樣的東西(如果是有道理的):
int i = Array.IndexOf(ARRAY, ARRAY.Where(x => x.Contains(VALUE1)).FirstOrDefault() && Contains(VALUE2)).Second());
編輯要求:
static void Main(string[] args)
{
//get states
Console.WriteLine("state1");
string state1 = Console.ReadLine();
Console.WriteLine("state2");
string state2 = Console.ReadLine();
//read from csv
String[] statearray = File.ReadAllLines(@"C:\Test\States.csv");
var query = from line in statearray
let data = line.Split(',')
select new
{
Start = data[0],
Finish = data[1],
StatesCrossed = data[2],
};
//get index
int i = Array.IndexOf(statearray, statearray.Where(x => x.Contains(state1)).FirstOrDefault());
Console.ReadLine();
}
凡state 1
和state 2 ="NSW"
並在csv
的格式爲:
NSW, NSW, 1
NSW, VIC, 2
你能分享一些樣品的輸入和輸出嗎?這將有助於澄清您的要求。 –
你真的應該使用一個正確的CSV閱讀器。 –