Помощь - Поиск - Пользователи - Календарь
Полная версия: Посимвольное считывание в С#
Форум «Всё о Паскале» > Delphi, Assembler и другие языки. > Другие языки
TS*
Возможно ли к экземпляру класа "string" добавить символ "char" последовательно?
Когда я делаю вот так:


			string cmnd = ("");
			char chr;
			do
			{
				chr = (char)Console.Read();
				cmnd+=chr; 
			} while (chr != ' ');
			Console.WriteLine(cmnd);




Каждый символ кидает в отдельную строку, как сделать чтоб символы "склеивались" в одной строке?
klem4
Что значит склеивались ? А чем этот метод не подходит ?

Вот так еще можно :


static void Main(string[] args)
		{
			char ch;
			string s = "";

			do
			{
				ch = Console.ReadKey().KeyChar;
				s += ch;
			} while (ch != ' ');
			Console.WriteLine(s);
			Console.ReadLine();
		}

TS*
В твоем случае всьо нормально, в моем должно делать то же, но почеу то выводит в консоль строку не целую, а по частях, типа ввел: "абв", потом "олд", оно выводит :

Код

абв
олд


вот попробуй.
Кстати может у кого есть какието доки по методах класов С#?
volvo
Цитата
типа ввел: "абв", потом "олд"
А что ты между ними ввел? Уж не Enter ли нажимал? Тогда чего удивляешься, что "разбито" на 2 строки? Как, по-твоему, должна выводиться строка "абв\nолд" ?
TS*
Понял, также перед этим пробовал StringBuilder, а к нему присоединять строки, выводило в одной строке,
просто конечная цель сделать чтоб первое слово записалось в одну переменную, а второе во вторую, потом <Enter>, попробовал:


			char ch;
			string cmnd = "";
			string way = "";

			do
			{
				ch = Console.ReadKey().KeyChar;
				cmnd += ch;
			} while (ch != ' ');
			ch='';
			do
			{
				ch = Console.ReadKey().KeyChar;
				way += ch;
			} while (ch != '\n');
			
			Console.WriteLine(cmnd);
			Console.WriteLine(way);




Но оно начинает бесконечно считывать символы
volvo
while (ch != '\n');
будет работать некорректно...

Нужно
while (ch != 0x0d);
если я не ошибаюсь... Или 0x0a unsure.gif (проверить сейчас не могу, у меня С# не установлена...)
Это текстовая версия — только основной контент. Для просмотра полной версии этой страницы, пожалуйста, нажмите сюда.