Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2002.11.04;
Скачать: CL | DM;

Вниз

Как убрать нулевые символы?   Найти похожие ветки 

 
kull ©   (2002-10-24 16:42) [0]

Привет народ!
У меня есть строка:

S = "string"#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0#0 ......

т.е. длина ее = 64, а реально полезных символов 6.

Как убрать нулевые символы? Я сделал так

S := PChar(S);

Может еще как можно?


 
Polevi ©   (2002-10-24 16:45) [1]

лучше никак


 
Song ©   (2002-10-24 16:55) [2]

StrLCopy+StrLen


 
kull ©   (2002-10-24 16:56) [3]

Дело в том что эта строка является декриптованным паролем.
И при передаче пароля с нулевыми символами в компонент программа виснет.
А если убрать их то все нормально работает.

Просто у меня вопрос: есть ли еще способы, кроме мною приведенного, убрать нулевые символы на конце строки?


 
DN ©   (2002-10-24 16:57) [4]

Если это 6 первых полезных, то можно приблизительно так:
...
S:=Delete(S,7,Length(S))
...


 
kull ©   (2002-10-24 16:58) [5]

Да, может я забыл сказать, что тип строки - string.


 
Anatoly Podgoretsky ©   (2002-10-24 16:59) [6]

kull © (24.10.02 16:42)
Это лучший метод, если в конце ничего кроме нулей


 
kull ©   (2002-10-24 16:59) [7]


> DN © (24.10.02 16:57)

заранее количество ненулевых символов неизвестно.


 
Anatoly Podgoretsky ©   (2002-10-24 17:04) [8]

Не играет роли, первый встретившийся символ 0 является ограничителем строки, сколько бы она физически памяти не занимала, сами строки при присаоении автоматически управляют памятью

PChar(S) вернет все до нуля
S := а это перераспределит память под строку


 
kull ©   (2002-10-24 17:07) [9]

Спасибо.



Страницы: 1 вся ветка

Текущий архив: 2002.11.04;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.021 c
4-11560
Igor_i
2002-09-23 13:37
2002.11.04
Как скопировать в буфер имена всех файлов и папок корня CD


4-11565
chsv
2002-09-16 18:57
2002.11.04
как изменить в сис.меню Alt+F4 на Ctrl+F4?


4-11543
raiks
2002-09-22 11:55
2002.11.04
Подавить звук, производимый системой при нажатии на Enter в TEdit


14-11458
DeMoN-777
2002-10-16 01:56
2002.11.04
Autoexec.bat


14-11393
dogma
2002-10-14 14:17
2002.11.04
База данных или блокнот?