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

Вниз

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

 
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;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.009 c
1-2623
Ivan Voronov
2002-04-20 11:05
2002.05.02
Шаблоны/регулярные выражения в Delphi


4-2723
cok11
2002-02-27 13:28
2002.05.02
Не фурычит!


3-2443
Бульбаш
2002-04-05 19:22
2002.05.02
Как заполнить список ListBox-а значениями двух полей...???


14-2644
Yuri Btr
2002-03-25 11:39
2002.05.02
Delphi vs Cbuilder !


1-2510
lipskiy
2002-04-20 20:19
2002.05.02
Как преобразовать порядок цветовых компонентов?