2

最初の行に列名があり、行の値が 1 より大きい csv ファイルを読み込んでいます。列名の位置を取得する必要があります。私が考えることができる唯一の方法は、switchまたはifsのいずれかを実行することです。私の場合、ifsを実行する方が速い(良い)ということをどこかで読みました。ただし、ファイルには多くの列 (〜 120) があります。代替案があるかどうか疑問に思っています。

private static void Get_Position(string line, performance p)
{
    string[] line_split = line.Split(',');
    for (int i = 0; i < line_split.Length; i++)
    {
       if (line_split[i].Contains(@"(0)\% Processor Time"))
        {
            p.percore[0] = i;
        }
        else if (line_split[i].Contains(@"(1)\% Processor Time"))
        {
            p.percore[1] = i;
        }
        else if (line_split[i].Contains("Private Bytes"))
        {}
        else if (line_split[i].contains("DPC")
        {
         }

        //on and on and on with else ifs
4

1 に答える 1