Бесплатные снипеты на заказ

doc

Client
Регистрация
30.03.2012
Сообщения
8 685
Благодарностей
4 643
Баллы
113
C#:
string data = "0001:351;0002:352;0003:353";

string main_tpl = "{{\"stocks\": [{0}]}}";
string element_tpl = "{{\"offer_id\": \"{0}\", \"product_id\": {1}, \"stock\": 0, \"warehouse_id\": 22142605386000}}";

List<string> elements = new List<string>();
foreach(string data_part in data.Split(';'))
    elements.Add(string.Format(element_tpl, data_part.Split(':')[0], data_part.Split(':')[1]));

return string.Format(main_tpl, string.Join(", ", elements));
 

Kuki

Client
Регистрация
02.11.2022
Сообщения
5
Благодарностей
0
Баллы
1
Здравствуйте. Подскажите как можно задать значение переменной, в зависимости от наличия текста на странице.
Есть тексты: text 1, text 2, text 3 ... Нужно определить находится ли какой-то из них на странице, и если есть text 1 - присвоить переменной text значение 1, если text 2, то значение 2 и т.д.
 
Последнее редактирование:

Vasyl1

Client
Регистрация
11.12.2016
Сообщения
203
Благодарностей
23
Баллы
18
Здравствуйте. Подскажите как можно задать значение переменной, в зависимости от наличия текста на странице.
Есть тексты: text 1, text 2, text 3 ... Нужно определить находится ли какой-то из них на странице, и если есть text 1 - присвоить переменной text значение 1, если text 2, то значение 2 и т.д.
C#:
// Получаем HTML страницы с кодировкой UTF-8
string pageContent = instance.ActiveTab.GetSourceText("UTF-8").ToLower();
// Проверяем наличие текстов в контенте страницы и присваиваем значения переменным
if (pageContent.Contains("text 1"))
{
   project.Variables["text1"].Value = "text 1";
}
if (pageContent.Contains("text 2"))
{
    project.Variables["text2"].Value = "text 2";
}
if (pageContent.Contains("text 3"))
{
    project.Variables["text3"].Value = "text 3";
}
 
  • Спасибо
Реакции: Kuki

Kuki

Client
Регистрация
02.11.2022
Сообщения
5
Благодарностей
0
Баллы
1
C#:
// Получаем HTML страницы с кодировкой UTF-8
string pageContent = instance.ActiveTab.GetSourceText("UTF-8").ToLower();
// Проверяем наличие текстов в контенте страницы и присваиваем значения переменным
if (pageContent.Contains("text 1"))
{
   project.Variables["text1"].Value = "text 1";
}
if (pageContent.Contains("text 2"))
{
    project.Variables["text2"].Value = "text 2";
}
if (pageContent.Contains("text 3"))
{
    project.Variables["text3"].Value = "text 3";
}
Спасибо. Разобрался. А как здесь можно сделать ожидание появление текста на странице в течении заданного времени?
 
Последнее редактирование:

Vasyl1

Client
Регистрация
11.12.2016
Сообщения
203
Благодарностей
23
Баллы
18
Спасибо. Разобрался. А как здесь можно сделать ожидание появление текста на странице в течении заданного времени?
C#:
// Время ожидания в миллисекундах (например, 5 секунд)
int timeout = 5000;
int checkInterval = 1000; // Интервал проверки в миллисекундах (1 секунда)
DateTime endTime = DateTime.Now.AddMilliseconds(timeout);

// Цикл ожидания появления текста
while (DateTime.Now < endTime)
{
    // Получаем HTML страницы с кодировкой UTF-8
    string pageContent = instance.ActiveTab.GetSourceText("UTF-8").ToLower();

    // Проверяем наличие текстов в контенте страницы и присваиваем значения переменным
    if (pageContent.Contains("text 1"))
    {
        project.Variables["text1"].Value = "text 1";
        break;
    }
    if (pageContent.Contains("text 2"))
    {
        project.Variables["text2"].Value = "text 2";
        break;
    }
    if (pageContent.Contains("text 3"))
    {
        project.Variables["text3"].Value = "text 3";
        break;
    }

    // Ожидание перед следующей проверкой
    Thread.Sleep(checkInterval);
}
 
  • Спасибо
Реакции: Kuki

Faron

Client
Регистрация
15.12.2015
Сообщения
41
Благодарностей
1
Баллы
8
Подскажите, как можно запустить этот код на ZP?
Нужно сгенерировать большое число от 1000000 до 1000000000000000
C#:
using System;
using System.Security.Cryptography;
using System.Globalization;


System.Threading.Thread.CurrentThread.CurrentCulture = new CultureInfo("en-US");


long GenerateRandomLong(long min, long max)
{
    if (min >= max)
     {
         throw new ArgumentOutOfRangeException("min", "Минимальное значение должно быть меньше максимального.");
     }
   
    using (var rng = RandomNumberGenerator.Create())
    {
         byte[] bytes = new byte[8];
        rng.GetBytes(bytes);
        long randomValue = BitConverter.ToInt64(bytes, 0);
         long result = Math.Abs(randomValue % (max - min)) + min;
         return result;
    }
}


long valueLong = GenerateRandomLong(1000000, 1000000000000000);
int value = (int)(valueLong % int.MaxValue);
return value;
 

samsonnn

Client
Регистрация
02.06.2015
Сообщения
1 815
Благодарностей
1 497
Баллы
113
Нужно сгенерировать большое число от 1000000 до 1000000000000000
129837

C#:
// Минимальное и максимальное значение
long minValue = 1_000_000;
long maxValue = 1_000_000_000_000_000;

// Создаем случайное число
Random random = new Random();
long result = minValue + (long)(random.NextDouble() * (maxValue - minValue));
project.Variables["result"].Value = result.ToString();

// Вывод результата
project.SendInfoToLog($"Случайное число: {result}", true);
 
  • Спасибо
Реакции: Faron

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