|
Как определить тип DBF? | ☑ | ||
|---|---|---|---|---|
|
0
Chum
28.05.10
✎
06:16
|
Программно из 7-ки или 8-ки как определить что за тип файла DBF - dbase 3/4/5?
|
|||
|
1
PaulBC
28.05.10
✎
06:23
|
||||
|
2
Chum
28.05.10
✎
06:31
|
и как не используя всякие hexviewrs получить первый байт заголовка?
|
|||
|
3
skunk
28.05.10
✎
06:52
|
||||
|
4
miki
28.05.10
✎
07:15
|
как вариант, заюзать текст:
_Text = CreateObject("Text"); _Text.Open("E:\123.dbf"); _Line = _Text.GetLine(1); FirstSimb = Left(_Line,1); If FirstSimb=2 Then _Type = "FoxBase"; ElsIf FirstSimb=3 Then _Type = "FoxBASE+/dBASE III PLUS/File without DBT"; ElsIf FirstSimb=4 Then _Type = "dBASE IV w/o memo fil"; ElsIf FirstSimb=5 Then _Type = "dBASE V w/o memo file"; ElsIf FirstSimb=48 Then _Type = "Visual FoxPro"; ElsIf FirstSimb=123 Then _Type = "dBASE IV with memo"; ElsIf FirstSimb=139 Then _Type = "dBASE IV"; <...> Else _Type = "hz"; EndIf; Message(_Type); |
|||
|
5
miki
28.05.10
✎
07:18
|
сорри, надо код символа:
FirstSimb = Asc(Left(_Line,1)); |
|||
|
6
Chum
28.05.10
✎
07:22
|
(4) не взлетит ни разу
(1)(3) спасибо, ушел тестить |
|||
|
7
Chum
28.05.10
✎
07:24
|
(5) сорри, так должно получится. только то, что dbf открывается целиком в ( _Text.Open("E:\123.dbf"); ) есть очень большой минус.
|
|||
|
8
skunk
28.05.10
✎
07:26
|
(7)тут уже аналогичная тема была ... поиском поискай
|
|||
|
9
Torquader
29.05.10
✎
22:49
|
Блин, всё просто.
Fso=CreateObject("Scripting.FileSystemObject); f=Fso.OpenTextFile("E:\123.dbf",1,0,0); s=f.Read(1);// читаем только один символ f.Close();// закрываем нафиг с=Asc(s);// получаем код первого символа |
|||
|
10
kiruha
30.05.10
✎
01:56
|
(7)
А кто сказал что 1С при открытии текстового файла скачивает файл целиком ? |
| Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |