Как лучше всего редактировать середину существующего плоского файла? - PullRequest
1 голос
/ 09 апреля 2009

У меня есть инструмент, который создает переменные для моделирования. Текущий рабочий процесс включает ручное копирование этих переменных во входной файл симуляции. Входной файл представляет собой стандартный плоский файл, то есть не двоичный файл или XML. Я хотел бы автоматизировать добавление переменных в плоский входной файл.

Переменные копируют существующие переменные в файле, например,

Новые переменные: Длина 10 Высота 20 Глубина 30

Старые переменные: ... Вес 100 Возраст 20 Длина 10 Высота 20 Глубина 30 ...

Хотелось бы, чтобы старые переменные скопировали новую переменную. Это 200 строк в плоский входной файл.

Спасибо за любые идеи.

P.S. Это на Windows.

Ответы [ 2 ]

1 голос
/ 09 апреля 2009

Если вы застряли, используя flat, то вы застряли, используя старомодный способ их обновления: чтение из оригинала, запись во временный файл, либо запись исходной строки, либо изменение данных, а затем запись этого. Чтобы добавить данные, запишите их во временный файл в соответствующей точке; чтобы удалить данные, просто не копируйте их из исходного файла.

Наконец, закройте оба файла и переименуйте временный файл в исходное имя файла.

В качестве альтернативы, возможно, пришло время подумать о небольшой базе данных.

0 голосов
/ 09 апреля 2009

Для чего-то подобного я бы посмотрел на простой шаблонизатор . У вас будет базовый шаблон с предопределенными маркерами маркеров вместо значений переменных, и вы просто передадите значения, необходимые вашему движку, вместе с шаблоном, и он выдаст результирующий файл, все присутствующие и правильные. В Java имеется ряд шаблонных движков с открытым исходным кодом, которые удовлетворят ваши потребности. Я думаю, что такие вещи также доступны на вашем языке. Вы даже можете бросить свой без особых проблем.

...