Как взять строку из списка по ее номеру с помощью C#?

Vladimirvolga

Пользователь
Регистрация
29.06.2017
Сообщения
134
Реакции
10
Баллы
18
Друзья, добрый день!
Есть список 25 строк. Как взять текст скажем из 13 строки, или из 14 с помощью кода?
Есть ощущение, что таким путем будет это будет быстрее сделать.

Спасибо заранее!
:)
 
без удаления
Код:
Развернуть Свернуть Копировать
string num_str = Convert.ToString(project.Variables["название переменной с необходимым номером"].Value);
return project.Lists["List 1"].GetItem(num_str);
с удалением

Код:
Развернуть Свернуть Копировать
string num_str = Convert.ToString(project.Variables["название переменной с необходимым номером"].Value);
return project.Lists["List 1"].GetItem(num_str, true);

но быстрее скорее всего не будет
 
без удаления
Код:
Развернуть Свернуть Копировать
string num_str = Convert.ToString(project.Variables["название переменной с необходимым номером"].Value);
return project.Lists["List 1"].GetItem(num_str);
с удалением

Код:
Развернуть Свернуть Копировать
string num_str = Convert.ToString(project.Variables["название переменной с необходимым номером"].Value);
return project.Lists["List 1"].GetItem(num_str, true);

но быстрее скорее всего не будет


Благодарю вас! Я немного не понял, код берет строку и куда ложит? Мне где-то надо указать переменную куда положить эту строку.
 
в кубике c# есть в самом низу - галочка - не возвращать значение - её надо снять и дальше выбрать переменную куда положить возвращаемое значение
 
в кубике c# есть в самом низу - галочка - не возвращать значение - её надо снять и дальше выбрать переменную куда положить возвращаемое значение

Спасибо, пойду разбираться.
 
без удаления
Код:
Развернуть Свернуть Копировать
string num_str = Convert.ToString(project.Variables["название переменной с необходимым номером"].Value);
return project.Lists["List 1"].GetItem(num_str);

но быстрее скорее всего не будет[/QUOTE]

Не разобрался.
Что делает вот эта строка:
return project.Lists["List 1"].GetItem(num_str);

"List 1" - это список который должен быть у меня?
 
без удаления
Код:
Развернуть Свернуть Копировать
string num_str = Convert.ToString(project.Variables["название переменной с необходимым номером"].Value);
return project.Lists["List 1"].GetItem(num_str);
с удалением

Код:
Развернуть Свернуть Копировать
string num_str = Convert.ToString(project.Variables["название переменной с необходимым номером"].Value);
return project.Lists["List 1"].GetItem(num_str, true);

но быстрее скорее всего не будет


Не разобрался.
return project.Lists["List 1"].GetItem(num_str);

Что вот эта часть кода делает?
"List 1" - это список который у меня уже должен быть?
 
что не работает - какая ошибка - заскриньте

Я кажется понял, поправьте пожалуйста.
Код который вы написали берет из переменной номер строки, а потом из списка забирает текст строки с этим номером и ложит в переменную. Так?

Мне немного не это нужно было.
В переменной лежит список, например такой:

Антенна
Водоотведение
Водоснабжение
ГВС
Природный газ
Содержание и ремонт жилья

Строка с номером 0 содержит текст "Антенна"
Под номером 2 идет текст "Водоснабжение" и тд.

Нужно, чтобы код извлек строку с номером например 2 (или какой укажу), которая содержит текст "Водоснабжение" и положил в конкретную переменную.
 
Без удаления или с удалением строки.
Будьте добры, если не трудно.
:)
 
хм) не вижу разницы в том, в чём Вы видите разницу. Вы же в конце тоже самое написали, или я что-то не улавливаю
 
project.Variables["название переменной с необходимым номером"].Value - та самая переменная, тот самый номер строки, внутри этой переменной - Нужно, чтобы код извлек строку с номером например 2 (или какой укажу)
положил в конкретную переменную. - это я писал - в кубике c# есть в самом низу - галочка - не возвращать значение - её надо снять и дальше выбрать переменную куда положить возвращаемое значение
 
хм) не вижу разницы в том, в чём Вы видите разницу. Вы же в конце тоже самое написали, или я что-то не улавливаю

Ну вот разница: код который вы прислали предполагает наличие списка, мне хотелось бы обойтись без него. Просто из одной переменной скопировался текст в другую.

Смотрите:
project.Variables["login"].Value = project.Variables["accline"].Value.Split(':')[0];

Этот код берет из переменной "accline" первое в строке, где есть разделитель ":" и ложит в переменную "login". Очень удобно!
Я хотел что-то типа этого, но не знаю как указать разделитель который есть новая строка. Может есть какой-то символ, который обозначает переход на новую строку?
 
  • Оценить
Реакции: arhip1985
есть, разделитель новой строки и перевода каретки есть, смотря какой текст у вас, т.е. разделитель - либо \n , либо \r\n
 
просто когда вы спрашиваете про списки, то и понимается в привычном для зенно понимании сущности - список, иначе надо писать - из переменной, в которой список строк
 
project.Variables["название переменной с необходимым номером"].Value - та самая переменная, тот самый номер строки, внутри этой переменной - Нужно, чтобы код извлек строку с номером например 2 (или какой укажу)
положил в конкретную переменную. - это я писал - в кубике c# есть в самом низу - галочка - не возвращать значение - её надо снять и дальше выбрать переменную куда положить возвращаемое значение

... project.Variables["название переменной с необходимым номером"].Value - та самая переменная, тот самый номер строки, внутри этой переменной - Нужно, чтобы код извлек строку с номером например 2 (или какой укажу)

Я вроде это понял.
Можно ограничиться только этой строкой кода?

... положил в конкретную переменную. - это я писал - в кубике c# есть в самом низу - галочка - не возвращать значение - её надо снять и дальше выбрать переменную куда положить возвращаемое значение

Это я тоже понял.

Если можно, что делает вот эта часть кода?
string num_str = Convert.ToString(project.Variables["Имя_переменной"].Value);

И вот эта?
return project.Lists["Имя_списка"].GetItem(0);
 
есть, разделитель новой строки и перевода каретки есть, смотря какой текст у вас, т.е. разделитель - либо \n , либо \r\n

Вот текст, который лежит в переменной:

Антенна
Водоотведение
Водоснабжение
ГВС
Природный газ
Содержание и ремонт жилья
ТБО утилизация
ТБО утилизация (кв.м.)
Теплоснабжение
 
делайте как вы делали ранее - project.Variables["login"].Value = project.Variables["accline"].Value.Split('\n')[0];
сплит я указал \n - это символ новой строки, но иногда надо указывать \r\n вместе с символом перевода каретки - это символ \r
 
  • Оценить
Реакции: Vladimirvolga
просто когда вы спрашиваете про списки, то и понимается в привычном для зенно понимании сущности - список, иначе надо писать - из переменной, в которой список строк

Блин все заработало! Спасибо вам большое, вы мне помогли.
project.Variables["a10114_uslg"].Value = project.Variables["a0014_ND_uslg"].Value.Split('\n')[0];

Указал разделитель "\n", все работает.
:)
 
Здравствуйте! А как взять строку из списка с помощью регулярного выражения?
Например, мне нужна первая строка в списке, которая содержит/начинается с "http".
Можно ли это выполнить с помощью c#?
 
Отпишу здесь

Как взять с удалениям не одну строку а по диапазону и поместить всё строки в переменную ?
 
Отпишу здесь

Как взять с удалениям не одну строку а по диапазону и поместить всё строки в переменную ?
Самый простой вариант:
C#:
Развернуть Свернуть Копировать
var zennoList = project.Lists["Мой зенно список"];
var range = new Random().Next(2, 5);

var lstTemp = new List<string>();

lock (SyncObjects.ListSyncer)
{
    for (int i = 0; i < range; i++)
    {
        if (zennoList.Count == 0) break;
        
        lstTemp.Add(zennoList[0]);
        zennoList.RemoveAt(0);
    }
}
project.Variables["result"].Value = string.Join("\n", lstTemp);
 
  • Оценить
Реакции: iBotovod и artur23

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