Замена на переменную

ftbwork10

Client
Регистрация
29.05.2017
Сообщения
442
Благодарностей
697
Баллы
93
Есть много текстовых файлов, в них мне надо заменить в тексте

[KEY]

На переменную

{Variable.key}

Но дело в том, что мне надо не зачение из переменной, а именно ее записать в текст, чтобы потом эти файлы использовать в другом шаблоне
Как такое реализовать?
 

Roman48

Client
Регистрация
28.02.2016
Сообщения
2 058
Благодарностей
742
Баллы
113
Добавь что-нибудь в переменную, например {V–riable.key}, а потом уже замена {V–riable.key} на {Variable.key}, как так можно сделать.
 

Sergodjan

Administrator
Команда форума
Регистрация
05.09.2012
Сообщения
19 458
Благодарностей
8 682
Баллы
113
Но дело в том, что мне надо не зачение из переменной, а именно ее записать в текст, чтобы потом эти файлы использовать в другом шаблоне
Как такое реализовать?
Скорее всего, не получится, если я правильно понял задачу, если подразумевалась замена не на {Variable.key}, а на {-Variable.key-}. На этапе записи в файл возникнет проблема - либо запишет значение, либо выдаст ошибку, если переменной нет в проекте. Проще все же использовать [key] и потом при работе с файлом уже заменять на нужное значение.

Или как вариант производить замену напрмиер в Notepad++ через групповую работу с файлами.
 
Последнее редактирование:
  • Спасибо
Реакции: Mikhail B.

Ilshakin

Client
Регистрация
14.02.2017
Сообщения
631
Благодарностей
542
Баллы
93
Есть много текстовых файлов, в них мне надо заменить в тексте

[KEY]

На переменную

{Variable.key}

Но дело в том, что мне надо не зачение из переменной, а именно ее записать в текст, чтобы потом эти файлы использовать в другом шаблоне
Как такое реализовать?
попробуй вот так:

C#:
string input = "тут много текста из файла, который содержит [key]";
return input.Replace("[key]", "{Variable.key}");

80458
 
Последнее редактирование:
  • Спасибо
Реакции: ftbwork10

BAZAg

Client
Регистрация
08.11.2015
Сообщения
1 760
Благодарностей
2 399
Баллы
113
надо заменить в тексте [KEY] На переменную {Variable.key}
Как такое реализовать?
C#:
// Создаю демо данные
List<string> files = new List<string>(){"file1.txt", "file2.txt","file3.txt", "file4.txt"};
Random r = new Random();
files.ForEach(x=>File.WriteAllText(Path.Combine(project.Directory, x),string.Format("{0} [KEY] {1}",r.Next(100), r.Next(100))));

System.IO.DirectoryInfo dir = new System.IO.DirectoryInfo(project.Directory);
var list = dir.GetFiles("*.txt", System.IO.SearchOption.TopDirectoryOnly).Select(file=> file.FullName).ToList();

foreach(string path in list){
    File.WriteAllText(path, File.ReadAllText(path).Replace("[KEY]", "{"+"Variable.key"+"}"));
}
 

Вложения

  • Спасибо
Реакции: ftbwork10

Кто просматривает тему: (Всего: 1, Пользователи: 0, Гости: 1)