Преобразовать строку в модель - PullRequest
0 голосов
/ 12 октября 2010

Допустим, у меня есть этот объект:

public struct Line
{
    public string Name { get; set; }
    public int Value { get; set; }
    public string Alias { get; set; }
}

И у меня есть файл со строками следующего синтаксиса:

garbagedata|moregarbagedata|Name|garbagedata3|Value|garbagedatamaximums|Alias\n

Обратите внимание, что moregarbagedata [x] может существовать или не существовать. Для извлечения групповых значений требуется регулярное выражение.

Какой самый простой и эффективный способ превратить строки этого файла в коллекцию Line объектов? Заказ этой коллекции не имеет значения.

1 Ответ

0 голосов
/ 12 октября 2010

На мой взгляд, здесь нужно задать пару вопросов.

  1. Можете ли вы изменить формат файла?
  2. Нет ли способа, вы можете указать отдельный разделитель для пар ключ / значение? {Значение: мусор, псевдоним: someotherGarbage}, {значение: secondGarbage ....}
  3. Являются ли строки (Environment.NewLine) единственным способом разделения пакетов?

Если ответ на 1 верен, затем вы можете использовать XmlSerializer и сериализовать и десериализовывать ваши объекты туда и сюда.

Если ответ на 2 верен, тогда вы можете посмотреть на синтаксический анализ файла вручную с помощью регулярных выражений или чтения построчно и просто искать значение: и затем предположить, что следующим элементом является значение «Значение»

если ответ на 3 верный, Возможно, тот же ответ, что и 2.

Надеюсь, это поможет.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...