Сообщения

Сообщения за июль, 2012

Если бы на медицинских форумах общались так же, как везде

Новичок: Ребят, у меня проблема — пришел пациент, один глаз работает, другой нет — что делать? Срочно!! Хирург (старожил): А-а-а-а!! Один глаз не работает, умора! (*ржет*) Скальпель (старожил): Блин, ламеры достали! Админ (администратор): Новичок, читайте правила форума, пользуйтесь поиском. Первое предупреждение. Доктор_Лектор (завсегдатай): Да ладно вам, помогите ему. Не видите — у человека горе. Гость1: Новичок, а чего ты хочешь-то? Формулируй вопрос правильно. Новичок: Гость1, я хочу чтобы оба галза видели. Можешь подсказать как это сделать? Гость1: А-а-а, чтобы оба видели — не знаю тогда. Я по иглоукалыванию специализируюсь. Новичок: Админ, я пользовался поиском, но ничего не нашел. Помогите кто-нибудь, пациент на столе лежит, я ему уже легкое вскрыл — не помогает!! Хирург (старожил): А-а-а!! Легкое вскрыл, я щас уссусь! (*ржет покатом*) Гость2: Новичок, глазной нерв проверял? Медбрат (опытный): Новичек, какой глаз не работает — левый или правый? Админ (адм

Delphi: сохраняем файлы в UTF-8 без BOM

Взялся вновь за программирование на Delphi. Установив Delphi XE2, я принялся искать способ писать файлы с кодировкой UTF-8. Самый простой способ писать текст из TStrings в файл в кодировке UTF-8: var MyStrings: TStrings; ... MyStrings.SaveToFile('C:\MyUtf8File.txt', TEncoding.UTF8); Однако такое использование этой функции приводит к сохранению текста с отметкой порядка байтов (Byte-Order Mark — BOM). Это может привести к несовместимости с некоторыми другими программами, например, при использовании в веб-разработке. К счастью, не пришлось изобретать велосипед. Проведя исследования функции TStrings.SaveToFile , я обнаружил, что существует такое свойство, как TStrings.WriteBOM ! Устанавливаем его в False и всё! В итоге получаем код: MyStrings.WriteBOM := False; MyStrings.SaveToFile('C:\MyUtf8File.txt', TEncoding.UTF8); P.S.: Проверял только Delphi XE2 и не знаю с какой версии это работает.