Генерация строк на с#

  • Автор темы Автор темы madnet
  • Дата начала Дата начала

madnet

Client
Регистрация
18.07.2013
Сообщения
11
Реакции
3
Баллы
3
Появилась необходимость в написание кубика на с#, знаний в этом практически нет, посему прошу помощи
Есть файл с кеями лежит в {-project.Directory-}\data\{-Variable.keyfile-}
Пробелы в кеях рандомно заменяются на символы -_+
Нужно сгенерировать 5 строк вида из переменных

{-Variable.protocol-} {-Variable.domen-} {-Variable.folder-} key_iz_file

Пример нужного на выходе

“hhttp://site.com/papka/key-key,
hhttp://site.com/papka/key1_key1,
hhttp://site.com/papka/key2+key2,
hhttp://site.com/papka/key3+key3,
hhttp://site.com/papka/key4-key4”

И положить этот текст в переменную {-Variable.links-}

Большое спасибо!
 
Появилась необходимость в написание кубика на с#, знаний в этом практически нет, посему прошу помощи
Есть файл с кеями лежит в {-project.Directory-}\data\{-Variable.keyfile-}
Пробелы в кеях рандомно заменяются на символы -_+
Нужно сгенерировать 5 строк вида из переменных

{-Variable.protocol-} {-Variable.domen-} {-Variable.folder-} key_iz_file

Пример нужного на выходе

“hhttp://site.com/papka/key-key,
hhttp://site.com/papka/key1_key1,
hhttp://site.com/papka/key2+key2,
hhttp://site.com/papka/key3+key3,
hhttp://site.com/papka/key4-key4”

И положить этот текст в переменную {-Variable.links-}

Большое спасибо!
Можете попробовать так.


C#:
Развернуть Свернуть Копировать
string protocol = "http://";
string domen = "site.com";
string folder = "papka";

var keylist = project.Lists["Ключевики"];
string[] chars = new string[]{"+","-","_"}; // символы

List<string> temp_list = new List<string>(); // лист для строк



Random rand = new Random();
lock (CommonCode.KeywordsLocker)
{
    string key = string.Empty;
    for(int ii = 0; ii<5 ;ii++)
    {

        int i = rand.Next(0, chars.Length);
        string randChar = chars[i];
        key = keylist[0];
        keylist.RemoveAt(0);
        key = key.Replace(" ",randChar); // заменяем пробел
        temp_list.Add($"{protocol}{domen}/{folder}/{key}");
    }
}

project.Variables["links"].Value = string.Join(",",temp_list);
 

Вложения

  • temp.zp
    temp.zp
    13 KB · Просмотры: 149
  • Спасибо
Реакции: madnet
Спасибо большое!
 
Столкнулся с проблемой.
Данный код берет кейворды из списка с удалением, т.е. если запустить код несколько раз подряд- список заканчивается и вылазит ошибка
Выполнение действия CSharp OwnCode. Индекс за пределами диапазона. Индекс должен быть положительным числом, а его размер не должен превышать размер коллекции.
Имя параметра: index


Как сделать, что бы кеи возвращались в список назад после каждого запуска?
Заранее спасибо
 

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