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

Вниз

Траблы со чтением конечных пробелов из строкового поля   Найти похожие ветки 

 
sashag   (2002-04-10 13:35) [0]

Если строка меньше длины поля, то конечные пробелы обрезаются, если строка содержит #0, то читается только часть строки - до символа #0. При использовании метода GetData() строка читается полностью, за исключением конечных пробелов - они заменяются на #0. Можно-ли каким-либо способом прочитать всю символьную строку как есть на уровне байтов?


 
Reindeer Moss Eater   (2002-04-10 13:38) [1]

Может не стоит хранить двоичные данные в стринговых полях?


 
Владислав   (2002-04-10 14:26) [2]

Что значит "читается"? Приведи код. Используй тип поля TBytesField.


 
Anatoly Podgoretsky   (2002-04-10 14:44) [3]

Это ошбика VCL или самого BDE


 
sashag   (2002-04-11 11:45) [4]

Пример : символьное поле FIELD1 длинной 12 символов содержит строку вида "ASVDF"#0"E265"#0" " - строка записана в синтаксисе Delphi.
При выполнении
s := Table1.FieldByName("FIELD1").AsString
s = "ASVDF"
При выполнении
var S : ShortString;
Buff: Array [1..255] of Char;

with FieldByName("FIELD1") do
begin
try
if not GetData(@Buff) then
MessageDlg(DisplayName + " is NULL", mtInformation, [mbOK], 0)
else
Begin
l:=12 {DataSize};
S:=Replicate(" ",l);
For i:=1 to l Do S[i]:=Buff[i];
End;
finally
end;

Значение переменной s="ASVDF"#0"E265"#0#0
т.е. завершающий пробел заменяется на #0



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

Форум: "Базы";
Текущий архив: 2002.05.02;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.45 MB
Время: 0.004 c
1-2607
Alexandr (CAV)
2002-04-20 08:11
2002.05.02
Ложное срабанывание двойного клика в rxDbGrid


7-2687
Hex
2002-01-30 18:42
2002.05.02
USB


6-2634
Di_wind
2002-02-19 20:35
2002.05.02
Максимальный размер файла в TSmtp


3-2466
Igor_
2002-04-11 09:59
2002.05.02
Отладка хранимой процедуры в InterBase


3-2442
toorick
2002-04-09 16:15
2002.05.02
таблица открыта





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский