Кошмар. Сообщения за 2 месяца пропали
Пользователи делятся на тех, кто уже пережил аварию жесткого диска и тех, кому только предстоит узнать, что это такое
Стоимость мероприятий по защите данных не должна превосходить стоимости ущерба от потери этих данных.
Восстановили из бэкапа
Ничего больного. Бывает, это техника. Хотя админ уже восстановили. Спасибо.
Подскажите пожалуйста как в модуле GraphWpf использовать тип линии Pen.Style и заливка Brush.Style, Brush.Hatch? В модуле GraphAbc без проблем!
Нет в GraphWPF такой функциональности. Попробую сделать
Спасибо.
Здравствуйте! Почему у меня при компиляции паскаль ругается на Close Неизвестное имя ‘Close’
**unit** Unit1;
**interface**
**uses** System, System.Drawing, System.Windows.Forms;
**var** f: text;
**type**
Form1 = **class** (Form)
**procedure** button1_Click(sender: Object; e: EventArgs);
{$region FormDesigner}
**internal**
{$resource Unit1.Form1.resources}
{$include Unit1.Form1.inc}
{$endregion FormDesigner}
**public**
**constructor** ;
**begin**
InitializeComponent;
**end** ;
**end** ;
**implementation**
**procedure** Form1.button1_Click(sender: Object; e: EventArgs);
**var**
namef: string;
**begin**
Assign(f, namef);
Rewrite(f);
Writeln(f, 'Строка1');
Writeln(f, 'Строка2');
Сlose();
**end** ;
**end** .
Ну, Close содержит русские буквы…
Прежде всего, отформатируйте код. Для этого перед ним нужно вставить строку, содержащую с первой позиции три обратных апострофа подряд (это клавиша, где русская буква Ё) ``` и такую же строку нужно добавить после завершения кода.
Спасибо! Close исправил, но у меня теперь создается пустой файл. Почему? Writeln в форме на работает?
Ну так а что вы закрываете? Вы не указали какой файл закрыть надо, поэтому берёт следующее ближайшее Close
. В контексте формы это закрытие самой формы. А файл так и остался открыт и не сохранён. И затем, при завершении работы программы, освободился до записи содержимого на диск.
Если я ставлю Close(f), то выдает ошибку “Неверное количество параметров процедуры”.
Ну так надо с этим разбираться, а не пытаться делать рандомные изменения, вроде убирания передачи файла который надо закрыть в закрывающую процедуру.
Для начала удостоверьтесь что у вас последняя версия. Обновляться это сюда:
http://pascalabc.net/ssyilki-dlya-skachivaniya
Далее - вставьте код нормально, так чтоб его можно было сразу скопировать, запустить, и увидеть то же поведение что у вас.
И желательно найти минимальный код который будет говорить что не нашёл такую Close
.
Попробуйте CloseFile
Спасибо с CloseFile получилось.
Всем привет! Подскажите, пожалуйста, есть ли встроенная функция для подсчёта количества непересекающихся вхождений подстроки в строку. Например, для подстроки ‘ABA’ и строки ‘ABABA’ возвращающая 1?
Понятно, что можно эту функцию вручную описать с использованием, например, Pos, но мой вопрос как раз в том, есть ли втроенная, готовая функция?
Знаю, что есть метод CountOf для строковых переменных, но он считает только количество вхождений односимвольных строк (или точнее char?) в строку.
Заранее спасибо!
##
var s := 'ABABA';
s.IndicesOf('ABA').Count.Print
Вызов со вторым параметром IndicesOf('ABA', True)
вернет количество вхождений с учетом пересечений. Реализация - КМП-алгоритм, так что эффективно работает и для строк с безумной длиной.
Спасибо! Супер!
Пожалуйста. Еще можно написать регулярное выражение, найти все его вхождения посредством MatchValues и подсчитать их количество. Для коротких строк может оказаться наиболее быстрым решением.