Форум «Всё о Паскале» _ Free Pascal, Pascal ABC и другие _ WideString
Автор: compiler 9.05.2007 19:49
Добрый день! Пытаюсь вот разобраться да не получается... Допустим, простейшая задача, вывести строку с приглашением, прочитать русскую строку и вывести ее на экран. По идее выставляем в SciTE-е UTF-8, пишем
var str:WideString; Begin Write('Введите строку->>'); ReadLn(STR); Write(STR); ReadLn(); read; end.
да не тут та было... Заранее благодарен
Автор: volvo 9.05.2007 20:05
Во-первых, почему WideString? Есть же Utf8String ...
Автор: compiler 9.05.2007 20:10
Цитата(volvo @ 9.05.2007 16:05)
Во-первых, почему WideString? Есть же Utf8String ...
незнаю.. но это дела не меняет:(
хотелось бы что б код был переносим с OS Win2000 на WinXP и наоборот..
Автор: volvo 9.05.2007 20:22
Цитата
это дела не меняет
Еще как меняет... Программа с WideString не компилируется вообще, а с Uft8String проходит процесс компиляции успешно...
Автор: compiler 9.05.2007 20:33
Цитата(volvo @ 9.05.2007 16:22)
Еще как меняет... Программа с WideString не компилируется вообще, а с Uft8String проходит процесс компиляции успешно...
но помоему надо еще както изменять кодировку сообщения которое мы вводим, а то по русски не получается ввести вообще..
Автор: compiler 12.05.2007 21:17
а если сделать так
var str:Utf8String; Begin str:='введите строку->>'; Write(str); ReadLn(STR); Write(STR); ReadLn(); read; end.
то русские буквы вообще не выводятся :(
Автор: Иван Шихалев 22.05.2007 14:05
А компилируется с каким ключиком -Fc ? Кроме того, с какой поры Write стал понимать юникод?
Автор: compiler 22.05.2007 21:20
Цитата(Иван Шихалев @ 22.05.2007 10:05)
А компилируется с каким ключиком -Fc ?
я в программировании новенький... настройки компилятора стандартны... ключей не коких не применяю...
Цитата(Иван Шихалев @ 22.05.2007 10:05)
Кроме того, с какой поры Write стал понимать юникод?
прошу прощения, а чем надо пользоваться?
Автор: SKVOZNJAK 22.05.2007 21:22
Понимает если сразу написать текст на уникоде, а потом его в оператор просто скопировать При этом в некоторых программах текст выводится только на левую часть экрана.
Автор: compiler 24.05.2007 21:04
Цитата(Иван Шихалев @ 22.05.2007 10:05)
А компилируется с каким ключиком -Fc ?
наверное все таки с ним...
Автор: Гость 25.05.2007 13:06
Ключ -Fc<кодировка> определяет кодировку исходников. Для UTF его надо указывать — по умолчанию он не выставится. Write(), насколько я помню, просто передает параметр на стандартный вывод, сильно сомневаюсь, что система сама догадается, что это юникод.