Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Основная";
Текущий архив: 2002.11.04;
Скачать: [xml.tar.bz2];

Вниз

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

 
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;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.45 MB
Время: 0.01 c
1-11330
Gari
2002-10-24 09:36
2002.11.04
Регистрация библиотек.


3-11099
nick-from
2002-10-15 19:11
2002.11.04
Добавление новых данных


7-11505
new23
2002-08-29 14:23
2002.11.04
Как узнать запущено приложение с определенным именем или нет?


3-11109
Sirus
2002-10-16 10:13
2002.11.04
Почему IBase не делает того что нужно???


3-11119
AndreyAG
2002-10-16 14:25
2002.11.04
TQuery





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский