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

Вниз

Strings and DOS   Найти похожие ветки 

 
undert   (2003-11-21 23:51) [0]

Мимо моих ушей пролетело:
это правда что если читать текст в DOS кодировке, String его не воспримет ?

У меня жирный глюк:
Есть таблица DBF, есть ячейка, всё в кодировке ДОС, ячейка забита 2мя символами, при чтении строка пустая ... Что это может быть и как ПЕРЕКОНВЕРТИРОВАТЬ ЭТОТ DBF В WINDOWS КОДИРОВКУ ?


 
undert   (2003-11-22 00:39) [1]

procedure TForm4.OnFieldGetText(Sender: TField; var Text: String; DisplayText: Boolean);
begin
// Sender.AsString - уже пустойend;


 
clickmaker   (2003-11-22 01:09) [2]

В БДЕ поставь нормальную кодировку DBase Rus 866, в настройках драйвера DBase


 
undert   (2003-11-22 16:17) [3]


> clickmaker ©


Я использую DataSet и никаких BDE


 
undert   (2003-11-23 01:10) [4]

?


 
Е-Моё имя   (2003-11-23 01:13) [5]

чо непонятно? кликмакер же дал совет

---
nil


 
Zacho   (2003-11-23 02:00) [6]

И еще есть "волшебные" функции OemToChar, OemToCharBuff ...


 
Zacho   (2003-11-23 02:01) [7]


> Я использую DataSet и никаких BDE

Это ты скорее всего ошибаешся.


 
Anatoly Podgoretsky   (2003-11-23 09:18) [8]

:-)
И очень, не лез бы ты в программирование.


 
undert   (2003-11-23 12:49) [9]


> Zacho © (23.11.03 02:01) [7]
>
> > Я использую DataSet и никаких BDE
>
> Это ты скорее всего ошибаешся.


С чего это ? Если б я использовал BDE и всякий гемор с драйверами, оно бы на других компах, без установленной данной хрени не пахало бы, а пахает... ==)


 
Palladin   (2003-11-23 12:50) [10]

Так ты значит без драйверов? Ну ты кудесник.


 
undert   (2003-11-23 12:51) [11]


> Anatoly Podgoretsky © (23.11.03 09:18) [8]
> :-)
> И очень, не лез бы ты в программирование.


Хочу - лезу =) Мне уже неделю никто не может дать внятного ответа на мой понятный даже де**лу вопрос. И какие тут мастера ? Я же не прошу дать мне исходники ядра Windows.


 
undert   (2003-11-23 12:53) [12]


> Е-Моё имя © (23.11.03 01:13) [5]
> чо непонятно? кликмакер же дал совет
>
> ---
> nil


Да ну, ну выставил то что он сказал ... и где результат этого ? =) Опять всё так же пусто ... :((


 
Е-Моё имя   (2003-11-23 12:55) [13]

ты разберись сначала, из какой области dataset, а из какой-BDE

---
nil


 
sniknik   (2003-11-23 12:59) [14]

undert © (21.11.03 23:51)
> ячейка забита 2мя символами
undert © (23.11.03 12:53) [12]
> Да ну, ну выставил то что он сказал ... и где результат этого ? =) Опять всё так же пусто ... :((
символы это именно символы? > #32, или меньше = #0 к примеру?


 
Anatoly Podgoretsky   (2003-11-23 13:04) [15]

undert © (23.11.03 12:51) [11]
А ты уже неделю не можешь задать вопрос, только что то неразборчивое.


 
Anatoly Podgoretsky   (2003-11-23 13:05) [16]

undert © (23.11.03 12:51) [11]
Видимо вопрос только дебилам и понятен.


 
Е-Моё имя   (2003-11-23 13:06) [17]

->
>> [16] Anatoly Podgoretsky © (23.11.03 13:05)
<-

=))))))))))))))))))))))))))))))))))))))))))))
!!!!!!!!!!!!!
точно

---
nil


 
undert   (2003-11-23 13:13) [18]


> sniknik © (23.11.03 12:59) [14]
> символы это именно символы? > #32, или меньше = #0 к примеру?


А что же ещё: от 000 до 255 (т.е. Chr(000)..Chr(255))


> Anatoly Podgoretsky © (23.11.03 13:04) [15]
> А ты уже неделю не можешь задать вопрос, только что то неразборчивое.


Да ну, и что же вам непонятно в моём вопросе ?


 
Е-Моё имя   (2003-11-23 13:15) [19]

Удалено модератором


 
Anatoly Podgoretsky   (2003-11-23 13:16) [20]

Кроме того, что, что не работает абсолютно все, и даже наводящие вопросы не помогали, ты их благополучно игнорировал.


 
Е-Моё имя   (2003-11-23 13:17) [21]

->
>> [16] Anatoly Podgoretsky © (23.11.03 13:05)
>> Видимо вопрос только дебилам и понятен.
<-

->
>> [18] undert © (23.11.03 13:13)
>> Да ну, и что же вам непонятно в моём вопросе ?
<-

ЫЫЫЫЫЫЫЫЫЫЫЫЫЫЫ

---
nil


 
Anatoly Podgoretsky   (2003-11-23 13:19) [22]

undert © (21.11.03 23:51)
Сообственно, вот точный ответ - это не правда.


 
sniknik   (2003-11-23 13:26) [23]

> Кроме того, что, что не работает абсолютно все, и даже наводящие вопросы не помогали, ты их благополучно игнорировал.
есть одно исключение, хоть чтото ->

undert © (23.11.03 13:13) [18]
> А что же ещё: от 000 до 255 (т.е. Chr(000)..Chr(255))
тогда все понятно, только у символов до #32 бывает чисто спецефическое назначение ...
например #0 в строке у dBase/Foxtro означает конец строки при разборе asString строка режется по нему.
решается несколькими способами, например задать тип поля Numeric(2,0) остальное ясно думаю.
другие способы на неизвестном типе движка/недоступности исходников даже обсуждать не хочется.


 
undert   (2003-11-23 13:29) [24]


> тогда все понятно, только у символов до #32 бывает чисто
> спецефическое назначение ...
> например #0 в строке у dBase/Foxtro означает конец строки
> при разборе asString строка режется по нему.
> решается несколькими способами, например задать тип поля
> Numeric(2,0) остальное ясно думаю.
> другие способы на неизвестном типе движка/недоступности
> исходников даже обсуждать не хочется.


Исходники я выеладывал.


 
undert   (2003-11-23 13:33) [25]

procedure TForm4.FormCreate(Sender: TObject);
begin
ID:=0;
end;

Function IntToDay(Int:Integer):String;
begin
Case Int Of
1:Result:="понедельник";
2:Result:="вторник";
3:Result:="среда";
4:Result:="четверг";
5:Result:="пятница";
6:Result:="суббота";
7:Result:="воскресенье";
End;
end;

procedure TForm4.GetID(ID:Integer);
Var Res:String;
Table:TVKDBFNTX;
begin
Case ID Of
0:Res:="DATA";
1:Res:="PIESA";
2:Res:="REGIS";
3:Res:="TIP1";
4:Res:="TRUPPA";
5:Res:="DOM";
6:Res:="COMPOU";
7:Res:="HOREOG";
End;
List.Items.Clear;
Form2.NTX.First;
If ID=0 Then
Begin
Repeat
List.Items.Add(Form2.NTX.FieldByName("DATA").AsString+" ["+IntToDay(Form2.NTX.FieldByName("WDAY").AsInteger)+"]");
Form2.NTX.Next;
Until Form2.NTX.Eof;
End Else
Begin
Table:=TVKDBFNTX(Form2.FindComponent(Res));
ShowMessage(Table.ClassName);
List.Items.Add(FindFieldValue("CODE","NAME",Table,Form2.NTX.FieldByName(Res).AsString));
While (Form2.NTX.FindNext) And (Not Form2.NTX.Eof) Do
List.Items.Add(FindFieldValue("CODE","NAME",Table,Form2.NTX.FieldByName(Res).AsString));
End;
end;

procedure TForm4.FormShow(Sender: TObject);
begin
GetID(ID);
//MoveBy, Seek, FinfKey, FindNearest, GotoKey, GotoNearest, Locate etc
end;

Function CMPTrimStr(S1,S2:String):Boolean;
Begin
S1:=S1;//UpperCase(Trim(S1));
S2:=S2;//UpperCase(Trim(S2));
Result:=S1=S2;
End;

function TForm4.FindFieldValue(CodeID,NameID:String;Table:TVKDBFNTX;ID:Variant):String;
begin
Table.First;
While Not CMPTrimStr(Table.FieldByName(CodeID).AsString,ID) Do
Begin
Application.ProcessMessages;
Table.Next;
If Table.Eof Then Break;
End;
If CMPTrimStr(Table.FieldByName(CodeID).AsString,ID) And (ID<>"") Then
Result:=Trim(Table.FieldByName(NameID).AsString) Else
Result:="";
//If Result="" Then
// Result:=" <нет записей> {"+ID+"}";
end;

procedure TForm4.OnFieldGetText(Sender: TField; var Text: String; DisplayText: Boolean);
begin
//ShowMessage(IntToStr(Length()));
//Text:=OEMToAnsiStr(Sender.AsVariant);
end;

procedure TForm4.ListClick(Sender: TObject);
Var Inx:Integer;
ID:Integer;
Code:String;
begin
Inx:=List.ItemIndex;
If Inx<0 Then Exit;
ID:=Inx;
With Form2 Do
Begin
NTX.First;
NTX.MoveBy(ID);

NTX.FieldByName("CODE").OnGetText:=OnFieldGetText;

Code:=NTX.FieldByName("CODE").Text;
// ShowMessage(Code);

StaticText1.Caption:=NTX.FieldByName("SECOND").AsString;
StaticText2.Caption:=FindFieldValue("CODE","NAME",SPECT,NTX.FieldByName("SPECT").AsString);

StaticText3.Caption:=FindFieldValue("CODE","NAME",REGIS,NTX.FieldByName("REGIS").AsString);
StaticText4.Caption:=FindFieldValue("CODE","NAME",PIESA,FindFieldValue("CODE","PIESA",NTX1,Code));
StaticText5.Caption:=FindFieldValue("CODE","NAME",WRITER,FindFieldValue("CODE","WRITER",NTX1,Code));
StaticText6.Caption:=FindFieldValue("CODE","NAME",DRAMAT,FindFieldValue("CODE","DRAMAT",NTX1,Code));

StaticText7.Caption:=FindFieldValue("CODE","NAME",TIP,NTX.FieldByName("TIP").AsString);
StaticText8.Caption:=NTX.FieldByName("TIP1").AsString;

StaticText9.Caption:=FindFieldValue("CODE","NAME",DOM,NTX.FieldByName("DOM").AsString);
StaticText10.Caption:=FindFieldValue("CODE","NAME",LANG,FindFieldValue("CODE","LANG",NTX1,Code));
StaticText11.Caption:=FindFieldValue("CODE","NAME",TRANSL,FindFieldValue("CODE","TRANSL",NTX1,Code));
StaticText12.Caption:=FindFieldValue("CODE","NAME",TRUPPA,NTX.FieldByName("TRUPPA").AsString);
StaticText13.Caption:=FindFieldValue("CODE","NAME",PAINT,NTX.FieldByName("PAINT").AsString);
StaticText14.Caption:=FindFieldValue("CODE","NAME",PAINT2,NTX.FieldByName("PAINT2").AsString);
StaticText15.Caption:=FindFieldValue("CODE","NAME",COMPOU,NTX.FieldByName("COMPOU").AsString);
StaticText16.Caption:=FindFieldValue("CODE","NAME",HOREOG,NTX.FieldByName("HOREOG").AsString);
StaticText17.Caption:=FindFieldValue("CODE","NAME",KOPEL,NTX.FieldByName("KOPEL").AsString);
StaticText18.Caption:=FindFieldValue("CODE","NAME",SCENEF,NTX.FieldByName("SCENEF").AsString);
StaticText19.Caption:=NTX.FieldByName("AKT").AsString;
StaticText20.Caption:=NTX.FieldByName("SUMMA").AsString;
StaticText21.Caption:=NTX.FieldByName("ISTOCHNIK").AsString;
Memo1.Text:=NTX.FieldByName("OTHER").AsString;
Memo2.Text:="";
Memo3.Text:=NTX.FieldByName("AKTR").AsString;
End;
end;

procedure TForm4.ListKeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
begin
ListClick(Sender);
end;

procedure TForm4.FilterChange(Sender: TObject);
begin
ID:=Filter.ItemIndex;
GetID(ID);
end;

procedure TForm4.SpeedButton1Click(Sender: TObject);
begin
Close;
end;

procedure TForm4.N1Click(Sender: TObject);
begin
//
end;

end.


 
undert   (2003-11-23 13:33) [26]

TVKDBFNTX - Обычный DataSet


 
Е-Моё имя   (2003-11-23 13:35) [27]

Удалено модератором


 
sniknik   (2003-11-23 13:39) [28]

undert © (23.11.03 13:29) [24]
> Исходники я выеладывал.
я их не видел, к тому же имел в виду исходники движка т.е. того драйвера через который доступ (а ты скорее всего свои, ;о) ну так и есть).
в случае с BDE может помочь чтение из буфера, то куда читается запись как есть до разбора на типы (вроде DbiGetRecord это и делает (читает как есть)) но у тебя же не BDE а вообще нопонятно чего.


 
undert   (2003-11-23 13:42) [29]


> Е-Моё имя © (23.11.03 13:35) [27]
> ->
> >> [26] undert © (23.11.03 13:33)
> >> TVKDBFNTX - Обычный DataSet
> <-
> да можно и не пояснять, по названию сразу понятно


Да ты вобще бы помолчал ... ни одно из твоих сообщений не несет никакого смыслового содержания, проще говоря ты только флеймишь тут.



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

Форум: "Потрепаться";
Текущий архив: 2003.12.16;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.52 MB
Время: 0.007 c
3-52072
3APA3A
2003-11-25 02:42
2003.12.16
Вопрос по MySQL


3-52106
Vanek
2003-11-24 10:30
2003.12.16
По интерфейсу


1-52224
DeScriptor
2003-12-05 01:55
2003.12.16
Выбор элемента ListBox и еще парочка


4-52439
comwad
2003-10-22 13:03
2003.12.16
Как запустить на выполнение файлы с различными расширениями


1-52240
Aleksandr
2003-12-04 12:20
2003.12.16
Все время ошибка System Error. Code 1400. Недопустимый дескриптор





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