Форум: "Базы";
Текущий архив: 2004.11.14;
Скачать: [xml.tar.bz2];
Внизкакой тип больше string(255) в DBF Найти похожие ветки
← →
sanek (2004-10-12 10:42) [0]Прошу помочь мне. Делаю программу на локальных DBF подскажите пожалуйста какой тип больше string(255)
← →
sniknik © (2004-10-12 11:06) [1]memo
← →
Fay © (2004-10-12 11:46) [2]только не 255, а 254
← →
Reindeer Moss Eater © (2004-10-12 11:48) [3]Бывает и 255
← →
Fay © (2004-10-12 11:53) [4]в DBF?!
← →
Reindeer Moss Eater © (2004-10-12 11:55) [5]Именно
← →
sniknik © (2004-10-12 12:04) [6]тогда уж, бывает и больше. именно dbf %о)), была табличка с полем длинной 384 байта (на проверку присылал ктото).
ведь в вопросе не оговорен тип dbf-a. значит можно советовать под тот тип, что удобнее тебе а не спрашивающему. ;о))
← →
Reindeer Moss Eater © (2004-10-12 12:08) [7]Кто помнит, тот может достать с полки dbu.exe и создать файл с полем char(255)
После чего спокойно читать/писать этот файл средствами BDE.
Создать нельзя, а все остальное - можно.
← →
Fay © (2004-10-12 12:10) [8]Ничего не понимаю. Ведь не решил же Reindeer Moss Eater повыёживаться?
← →
sniknik © (2004-10-12 13:03) [9]чего тут не понятного? dbf всего лиш расширение, типы же файлов совершенно различны могут быть.
под длинну поля в dbf (не во всех наверняка ;о)) обычно определено 2 байта, 1-й длинна 2-й знаков после запятой (или наоборот ;) и это для всех типов хотя для многих знаки после запятой неактуальны, этим можно пользоваться (и пользуются "дорабатывая" формат, без исправления структуры), например clippep (dbu.exe это от него утилита).
так вот этот самый клипер использует оба байта для определения длинны строки... и строки у него не паскалевские, где один байт на определение длинны и 254 на строку, а "нормальные" ;о) нулем терминутые ;), т.е. любой длинны (не будем придиратся на ограничение размера сегмента памяти ;о))...
но это в общем не важно, важно что для dbu размер 255 является правильным и он его туда преспокойно запишет, а так как формат файла является практически стандартным (небольшие и несущественные изменения ;), то BDE его спокойно прочитает, и будет работать. до тех пор пока не встретится полностью заполненная строка, тогда он скорее всего просто обрежет "лишний" символ а может и "глюкнутся" в зависимости от версии BDE.
в моем примере из [6], я видел через BDE из 384 символов 128 (старшие биты длинны (256) просто игнорировались, ведь там по идее неактуальная знаковая размерность), вот. но тот кто мне это присылал говорил что у него BDE "вешается" на этом файле, BDE был довольно старый (насколько не помню)
в случае с 255 тоже наверное возможны варианты.
Страницы: 1 вся ветка
Форум: "Базы";
Текущий архив: 2004.11.14;
Скачать: [xml.tar.bz2];
Память: 0.46 MB
Время: 0.046 c