Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

Problems! When I reading DOS file from D3/NT

0 views
Skip to first unread message

Dmitry Popkov

unread,
Apr 22, 1999, 3:00:00 AM4/22/99
to
Help me !

 I want to read DBF file and import DBF record from DOS to PICK
( D3/NT  Release Version  7.1.3.NT 295 patch).
I remarked that DBF file consists of head, fields definition and body of
records.
And head has information of data structure, for example, number of
records,
length of record, date of last modification this file and e.t.c. And so
important,
head has in finish symbol "0D".
 I wrote simple program reading dbf file as pick file, like
  ................
    OPEN "F:/ " TO DosFile ELSE STOP
     READ Val FROM DosFile,"inv.dbf"
 ..................

I don't believed it,
- in the first, I see that length DBF file and length variable - Val is
not equal.
- In the second, I give after testing conversion full trash.

After this,
- I create DOS file, which it has binary symbols of range 1 to 255
- I wrote follow PICK/BASIC program

****************************************
* Example of reading
*  DOS file from PICK/BASIC program
****************************************
* direction + space
***** open Dos file, as file
 OPEN "F:/ " TO DosFile ELSE
 CRT "Dos file not opened !"
  END
*
*******************************************
* (Read as TEXT file)
* *****************************************
PROMPT ""
 PRINT "Dos file > ":; INPUT NameFile
   ValPick=""
  READ Val FROM DosFile,NameFile THEN
   *
 Num.Chr=LEN(Val)
     PRINT "Lenght ":Num.Chr
      FOR I=1 TO LEN(Val)
       ValPick=ValPick:(DTX(SEQ(Val[I,1]))"r%2")"R#3"
  * next string for better readable of HEX table
         IF REM(I,16) = 0 THEN ValPICK=ValPick:CHAR(13)
      NEXT I
   *
  END
 *
  WRITE Val ON DosFile,NameFile:"BIN"
  WRITE ValPick ON DosFile,NameFile:"HEX"
*
END

- When I execute it, I give two DOS file

In HEX:

01 02 03 04 05 06 07 08 20 20 20 20 FE 0B 0C 0E
0F 10 10 11 12 13 14 15 16 17 18 19 1A 1B 1C 1D
1E 1F 20 21 22 23 24 25 26 27 28 29 2A 2B 2C 2D
2E 2F 30 31 32 33 34 35 36 37 38 39 3A 3B 3C 3D
3E 3F 40 41 42 43 44 45 46 47 48 49 4A 4B 4C 4D
4E 4F 50 51 52 53 54 55 56 57 58 59 5A 5B 5C 5D
5E 5F 60 61 62 63 64 65 66 67 68 69 6A 6B 6C 6D
6E 6F 70 71 72 73 74 75 76 77 78 79 7A 7B 7C 7D
7E 7F 80 81 82 83 84 85 86 87 88 89 8A 8B 8C 8D
8E 8F 90 91 92 93 94 95 96 97 98 99 9A 9B 9C 9D
9E 9F A0 A1 A2 A3 A4 A5 A6 A7 A8 A9 AA AB AC AD
AE AF B0 B1 B2 B3 B4 B5 B6 B7 B8 B9 BA BB BC BD
BE BF C0 C1 C2 C3 C4 C5 C6 C7 C8 C9 CA CB CC CD
CE CF D0 D1 D2 D3 D4 D5 D6 D7 D8 D9 DA DB DC DD
DE DF E0 E1 E2 E3 E4 E5 E6 E7 E8 E9 EA EB EC ED
EE EF F0 F1 F2 F3 F4 F5 F6 F7 F8 F9 FA FB FC FD
10 5E 10 5F

!!! Attention !!!
 Symbol
- 09 was changed for 20 20 20 20
- 0A                          FE
- 0D was loss ????
- FE                          10 5E
- FF                          10 5F

In BIN:
 ...

 Unfortunately, I can show this file, but  I notice, that
 Symbol
- 09 was change for 20 20 20 20
- 0A                          0D 0A
- 0D  was loss ???
- FE                           FE
- FF                           FF
And in the end of file was added "0D 0A"

I try another way and I replace access to DOS file

OPEN "NT_BIN:F:/ " TO DosFile ELSE
           ------------------
 CRT "Dos file not opened !"
  END
And I given incredible results - LENGTH OF CREATED BINARY
FILE IS 12 byte.

IN HEX:
  32 37 33 41 FE 30 30 30 31 and so on!

>>>>>>>>>>>>>>>>>> I hope that anybody help me <<<<<<<<<<<<<<

  My best regard,
   Dmitry Popkov

P.S. May be I don't know TOP SECRET option for working with DOS files
 
 

vcard.vcf
0 new messages