Модераторы: Snowy, MetalFan, bems, Poseidon
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> как проверить пустая строка или нет? 
V
    Опции темы
zhefran
Дата 2.11.2007, 17:05 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 237
Регистрация: 27.9.2007
Где: Винница-Киев-Ирпе нь-?, Украина

Репутация: нет
Всего: нет



Как мне проверить пустая строка или нет?
Я вынимаю инфу с файла и отображаю ее в мемо. если файл пуст, то выводить припустим "файл пуст". 
Проверять размер файла или есть другой способ?
--------------------
Ніщо нізвідки не виникає і нікуди не дівається!Лечение компьютеров от вирусов! Бесплатно!
PM MAIL WWW ICQ   Вверх
Rennigth
Дата 2.11.2007, 17:11 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Участник Клуба
Сообщений: 1708
Регистрация: 21.6.2004
Где: Moscow

Репутация: 15
Всего: 76



zhefran, 
Хм..  smile  а так?
Код

  if Trim(str) = '' then
    memo.Text := 'Файл пуст'
  else
    memo.Text := str;



--------------------
(* Honesta mors turpi vita potior *)
PM MAIL ICQ   Вверх
ivan219
  Дата 2.11.2007, 17:17 (ссылка) |  (голосов:1) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1121
Регистрация: 19.11.2005
Где: Планета земля

Репутация: 5
Всего: 12



Цитата(zhefran @  2.11.2007,  17:05 Найти цитируемый пост)
Как мне проверить пустая строка или нет?

Код

if St = '' then ....

PM MAIL ICQ   Вверх
zhefran
Дата 2.11.2007, 17:58 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 237
Регистрация: 27.9.2007
Где: Винница-Киев-Ирпе нь-?, Украина

Репутация: нет
Всего: нет



так - list index out of bounds (0);
Использую TStringList

Код

procedure TForm1.Button3Click(Sender: TObject);
var p:TStrings;
begin
p:=TStringList.Create;
p.LoadFromFile('c:\My.txt');
if trim(p.Strings[0])=''
then edit1.text:='empty' else edit1.text:=p.Strings[0];
p.Free;
end;


в таком случае trim покатит только тогда, когда перейти на следующую строку.
--------------------
Ніщо нізвідки не виникає і нікуди не дівається!Лечение компьютеров от вирусов! Бесплатно!
PM MAIL WWW ICQ   Вверх
Rennigth
Дата 2.11.2007, 18:07 (ссылка) |  (голосов:1) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Участник Клуба
Сообщений: 1708
Регистрация: 21.6.2004
Где: Moscow

Репутация: 15
Всего: 76



Код

var
  p: TStrings;
begin
  p := TStringList.Create;
  p.LoadFromFile('c:\My.txt');
  if Trim(p.Text) = '' then
    edit1.text := 'empty'
  else
    edit1.text := p.Text;
  p.Free;
end;


Это сообщение отредактировал(а) Rennigth - 2.11.2007, 18:08


--------------------
(* Honesta mors turpi vita potior *)
PM MAIL ICQ   Вверх
zhefran
Дата 2.11.2007, 18:27 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 237
Регистрация: 27.9.2007
Где: Винница-Киев-Ирпе нь-?, Украина

Репутация: нет
Всего: нет



Ivan219, та же самая ситуация и у тебя!

Добавлено через 4 минуты и 51 секунду
Спасибо вам! Ваши оба способы работают!
--------------------
Ніщо нізвідки не виникає і нікуди не дівається!Лечение компьютеров от вирусов! Бесплатно!
PM MAIL WWW ICQ   Вверх
Rennigth
Дата 2.11.2007, 18:33 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Участник Клуба
Сообщений: 1708
Регистрация: 21.6.2004
Где: Moscow

Репутация: 15
Всего: 76



Цитата(zhefran @  2.11.2007,  18:27 Найти цитируемый пост)
Ivan219, та же самая ситуация и у тебя! 

Обманываешь небось... Где ошибка?

Добавлено через 52 секунды
Цитата(zhefran @  2.11.2007,  18:27 Найти цитируемый пост)
Спасибо вам! Ваши оба способы работают! 

smile


--------------------
(* Honesta mors turpi vita potior *)
PM MAIL ICQ   Вверх
zhefran
Дата 2.11.2007, 18:36 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 237
Регистрация: 27.9.2007
Где: Винница-Киев-Ирпе нь-?, Украина

Репутация: нет
Всего: нет



Спасибо вам! Оба способы прекрасно работают!

ЗЫ. Извините это сообщение было отправлено по невнимательности!!! :(

Это сообщение отредактировал(а) zhefran - 2.11.2007, 18:57
--------------------
Ніщо нізвідки не виникає і нікуди не дівається!Лечение компьютеров от вирусов! Бесплатно!
PM MAIL WWW ICQ   Вверх
ivan219
  Дата 2.11.2007, 18:43 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1121
Регистрация: 19.11.2005
Где: Планета земля

Репутация: 5
Всего: 12



Цитата(zhefran @  2.11.2007,  18:27 Найти цитируемый пост)
Ivan219, та же самая ситуация и у тебя!

Враки если строка действительно пуста то всё  smile а вот если вней есть хоть что-то даже если ты этого не видишь или не знаешь то естественно не сработает.
PM MAIL ICQ   Вверх
zhefran
Дата 2.11.2007, 18:53 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 237
Регистрация: 27.9.2007
Где: Винница-Киев-Ирпе нь-?, Украина

Репутация: нет
Всего: нет



Ivan219, 
если брать p.Text, то работает! Если писать p.Strings[0], то нет! p.Strings[0] если я не ошибаюсь есть первой строкой в файле. Во втором случае выдает ошибку
Цитата

list index out of bounds (0);



--------------------
Ніщо нізвідки не виникає і нікуди не дівається!Лечение компьютеров от вирусов! Бесплатно!
PM MAIL WWW ICQ   Вверх
stab
Дата 2.11.2007, 19:27 (ссылка) |    (голосов:2) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Экс. модератор
Сообщений: 1839
Регистрация: 1.1.2003

Репутация: 1
Всего: 48



а что мешает проверить p.Count на ноль?


--------------------
6, 6, 6 - the number of the beast.
PM MAIL WWW   Вверх
MetalFan
Дата 2.11.2007, 21:27 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Аццкий Сотона
****


Профиль
Группа: Комодератор
Сообщений: 3815
Регистрация: 2.10.2006
Где: Moscow

Репутация: 22
Всего: 128



еще вариант:
Код

var
  lFS: TFileStream;
begin
  lFS := TFileStream.Create('C:\text.txt', fmOpenRead );
  if lFS.Size = 0 then
     Memo1.Text := 'empty'
  else
     Memo1.Lines.LoadFromStream( lFS );
  lFS.Free;


Это сообщение отредактировал(а) MetalFan - 2.11.2007, 21:28


--------------------
There are always someone smarter than you...
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Delphi: Для новичков"
SnowyMetalFan
bemsPoseidon
Rrader

Запрещается!

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делиться вскрытыми компонентами

  • Литературу по Дельфи обсуждаем здесь
  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы по реализации алгоритмов рассматриваются здесь
  • 90% ответов на свои вопросы можно найти в DRKB (Delphi Russian Knowledge Base) - крупнейшем в рунете сборнике материалов по Дельфи


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Snowy, MetalFan, bems, Poseidon, Rrader.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Delphi: Для новичков | Следующая тема »


 




[ Время генерации скрипта: 0.0520 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.