Как разобрать столбец строк из текстового файла в enum.C # - PullRequest
0 голосов
/ 05 октября 2018

У меня есть текстовый файл, который я могу построчно проанализировать в значениях объекта, который выглядит следующим образом:

454864.35 6780638.76 -2206.263 3.000000

452235.30 6780927.62 -2081.68 3.000000

456687,71 6781378,11 -1978,47 2,000000

455560,87 6781230,55 -2173,23 1,000000

454072,22 7781284,69 -2154,58 3,000000

453191,10 6781416,4362006 * 10100000

454301.38 6781950.10 -2061.31 3.000000

Значения, которые я анализирую в объекте, это IndexX, IndexY, IndexZ и значение, представляющее тип породы (0-3), которое я создал enumfor.

  public enum FaciesCodeType
     {
         Sand = 0,
         FineSand = 1,
         CoarseSand = 2,
         Shale = 3,
     }

И мой текущий метод преобразования текста выглядит следующим образом:

        public PetrelDataFaciesCodeModel FromFaciesCodeTxtLine(string txtline)
    {
        string[] values = txtline.Split(' ');
        PetrelDataFaciesCodeModel dataFaciesValues = new PetrelDataFaciesCodeModel();
        dataFaciesValues.IndexX = float.Parse(values[0]);
        dataFaciesValues.IndexY = float.Parse(values[1]);
        dataFaciesValues.IndexZ = float.Parse(values[2]);
        dataFaciesValues.FaciesCode = 

        return dataFaciesValues;
    }

Мой вопрос заключается в том, как бы я прочитал текстовый файл и создал бы значение объекта из перечисления, котороеанализируется по значению позиции индекса [4] каждой текстовой строки?

Заранее спасибо!

1 Ответ

0 голосов
/ 05 октября 2018

так что в основном ваш вопрос сводится к:

как прочитать строковое представленное значение с плавающей точкой и преобразовать его в перечисляемое значение?

все, что вам нужно сделать, - это анализировать с плавающей точкой, какдругие и приведите результат к вашему типу enum ...

так в вашем случае:

dataFaciesValues.FaciesCode = (FaciesCodeType)float.Parse(values[3]);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...