testdbf.pp 775 B

12345678910111213141516171819202122232425262728293031323334353637383940414243444546
  1. program dumpdb;
  2. {$i+}
  3. uses DB,Dbf,SysUtils;
  4. Procedure DumpTable (Const TN,FN : String);
  5. Var
  6. I,Count : longint;
  7. F : Text;
  8. Buf : Array[1..1024*4] of byte;
  9. begin
  10. Assign(F,FN);
  11. Rewrite(F);
  12. // SetTextBuf(F,Buf);
  13. Count := 0;
  14. With TDBF.Create(Nil) do
  15. begin
  16. TableName:=TN;
  17. Open;
  18. While not EOF do
  19. begin
  20. Inc(Count);
  21. For I:=0 to FieldCount-1 do
  22. With Fields[i] do
  23. Writeln(F,FieldName:20,' : ',AsString);
  24. Writeln(F,StringOfChar('=',72));
  25. Next;
  26. end;
  27. end;
  28. Writeln(F,'Dumped total of ',Count,' records.');
  29. Close(F);
  30. end;
  31. Var i : longint;
  32. begin
  33. If ParamCount<2 then
  34. begin
  35. Writeln('Usage: dumpdb tablename filename');
  36. Halt(1);
  37. end;
  38. DumpTable(Paramstr(1),Paramstr(2));
  39. end.