![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Сохранение данных в DBF IV [dBase, FoxPro, FB 1.5]
ganda © (2008-10-02 08:23:00)Сохранение данных из FireBird в формате DBF IV кодовая страница DBF стоит 866. При сохранение в полях используется специальные символы, после сохранения данных в файле DBF спец. символы отображаются решеткой!
пример кода такой
FDataModule.TblBgate2.TableName:= tn;
FDataModule.TblBgate2.TableLevel:= 4;
FDataModule.TblBgate2.TableType:= ttDBase;
FDataModule.TblBgate2.CreateTable;
FDataModule.TblBgate2.Open;
****************************************
for iFieldCount := 0 to DataSetSource.FieldCount - 1 do
if DataSetDest.FindField(DataSetSource.Fields[iFieldCount].FieldName)<>nil
then
if (UpperCase(DataSetSource.Fields[iFieldCount].FieldName) <> 'ID') and
(UpperCase(DataSetSource.Fields[iFieldCount].FieldName) <>
'ID') then
begin
DataSetDest.FieldByName(DataSetSource.Fields[
iFieldCount].FieldName).AsString:= DataSetSource.Fields[
iFieldCount].AsString
Городской Шаман (2008-10-04 05:53:00) [1]Удалено модератором
Городской Шаман (2008-10-04 05:44:00) [2]Удалено модератором
Германн (2008-10-04 02:20:00) [3]Удалено модератором
MsGuns (2008-10-04 02:03:00) [4]Удалено модератором
Городской Шаман (2008-10-03 20:41:00) [5]
> ganda (02.10.08 08:23)
С учётом всего вышесказанного экспортируй в xml с кодировкой utf8, так как скорее всего dbf не держит unicode.
Вот лучший xml парсер для Delphi.
http://www.simdesign.nl/xml.html
Johnmen (2008-10-03 20:22:00) [6]
> Сергей М. © (03.10.08 19:37) [24]
> Ну и какого же хрена ты тут жужжал про какие-то там "решетки" ?)
Так у него претензии к виду были. А не к содержимому...:)
Сергей М. (2008-10-03 19:37:00) [7]Ну и какого же хрена ты тут жужжал про какие-то там "решетки" ?)
ganda (2008-10-03 18:31:00) [8]Решение проблемы не очень приятно! Но действенное, сохраняются данные! Специальные символы заменяются на обыкновенные символы (в программе используется только верхний регистр) только маленькими! После открывается файл DBF как текст где нахожу эти символы и подставляю спец. символы! все прекрасно работает!
MsGuns (2008-10-02 12:44:00) [9]>Сергей М. © (02.10.08 11:15) [20]
>Ну вот ты возьми да расскажи ему про то какие смазки обычно применяют для таких колес)
Не могу. Ибо пользуюсь смазкой для треугольных :)
Правильный$Вася (2008-10-02 11:41:00) [10]решетки - это просто способ показасимволов, которые твой просмотрщик не понимает
при правильной выгрузке коды их такие же, как и в исходных данных
ты смотри на DBF не просмотрщиком DBF, а HEX-редактором, тогда увидишь коды символов и сравнишь с ожидаемыми
а вообще, учти, что многие программы работы с данными (БДЕ тоже) автоматически пытается перекодировать в ту кодовую страницу, которая указана для БД в его настройках (он-то не знает, что часть символов - это буквы, которые надо перекодировать, а часть - спецсимволы, которые не надо перекодировать, - для него все эти байты - текст)
я натыкался на такое, когда хранил в memo-полях бинарные данные
Сергей М. (2008-10-02 11:15:00) [11]
> MsGuns © (02.10.08 11:03) [19]
))
Ну вот ты возьми да расскажи ему про то какие смазки обычно применяют для таких колес)
Ну, скажем, на примере какие забавные "решетки" можно увидеть, если глядя в браузере на этувот страницу, сменить кодировку на, скажем, японскую .. При том что текст на странице как был в кириллице, так им остался)
MsGuns (2008-10-02 11:03:00) [12]Блин, ему нужно подсказать чем смазать квадратные колеса чтобы телега поехала, в вы все советуете заменить их на круглые.
Вот уж недотепы какие :))
Сергей М. (2008-10-02 10:04:00) [13]
> доступ к интернету
Мда..
Чем дальше в лес, тем толще партизаны)..
Уже и Тырнет всплывает)
Причем здесь Тырнет-то ?
Василий Жогарев (2008-10-02 10:02:00) [14]
> ganda (02.10.08 09:57) [14]
> исходная строка в FB YЏI‰Љ‹ЈЊЌ такую я строку и должен получить
> и в DBF, а получаю ########
Возможно кодировка, поковыряй ее...
ganda (2008-10-02 10:00:00) [15]
> Сергей М. © (02.10.08 09:54) [13]
телеге просто необходимо 5 колесо т.к. не все имеют доступ к интернету! Видимо придется усиленно по извращатся!
Сергей М. (2008-10-02 10:00:00) [16]
> исходная строка в FB YЏI‰Љ‹ЈЊЌ
Эту строку ты гдеуведел ?
> такую я строку и должен получить и в DBF
Она там и есть на самом деле, можешь в этом не сомневаться.
> а получаю ########
Потому ты что смотришь на ту же самуюстроку другими"глазами")
ganda (2008-10-02 09:57:00) [17]исходная строка в FB YЏI‰Љ‹ЈЊЌ такую я строку и должен получить и в DBF, а получаю ########
Сергей М. (2008-10-02 09:54:00) [18]
> ganda (02.10.08 09:43) [11]
>
> #$8F;
> #$89;
> #$8A;
> #$8B;
> #188;
> #$8C;
> #$8D;
Вот этоты гдевидишь ?
> вижу вместо них #
Потому что твой просмотрщик не знает (и знать не может), каким фонтом с каким чарсетом отрисовывать такие символы. Это должно быть известно тебе.
> потом эти данные отправляются в базу Оракл
А что, напрямую из FB в Оракл разве нельзя экспортировать данные ?
Этой телеге обязательно нужно 5-е колесо в виде ДБФ-файла ?
Johnmen (2008-10-02 09:49:00) [19]Как выглядит исходная строка? После считывания из FB.
ganda (2008-10-02 09:43:00) [20]#$8F;
#$89;
#$8A;
#$8B;
#188;
#$8C;
#$8D;
нужно увидеть эти символы а вижу вместо них #