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

Вниз

Из .txt в .db или представление базы ввиде TXT   Найти похожие ветки 

 
Ahmad K   (2003-01-05 03:10) [0]

Уважаемые Мастера!
Не хочу быть назойливым и, наверное, вопрос избитый и вполне достоей автора(т.е. чайника).
Хотелось бы узнать каким убразом считывать текст из текстешника и заносить его в таблицу, например текст:
Иванов*Иван*Иванович*20.01.1967г.
Надо данный текст представить ввиде таблицы и разложить слова по колонкам, чтобы в колонке "Фамилия" было: Иванов и т.д.
Заранее спасибо!


 
Наталия   (2003-01-05 06:03) [1]

считывать - readln
разбивать на части - pos,delete,copy
записать в таблицу -
table1.append
table1.fieldbyname("fam").asstring:=...;
table1.post;


 
Alek Aaz   (2003-01-05 06:10) [2]

Что ж ты вообще то умеешь?

AssignFile(textf,"название_твоего_файла.txt");
Repeat
readln(textf,s);
Fam:=Copy(s,1,pos("*",s)-1);
Delete(s,1,pos("*",s));
Name2:=...
Name3:=... {анналогично}
Data:=s;
Fields[1].asString:=Fam;
Fields[2].asString:=Name1;
Fields[3].asString:=Name2;
Fields[4].asString:=Data;
Append;
Until eof(textf);


За точность не ручаюсь. Но смысл понятен?


 
sniknik   (2003-01-05 08:18) [3]

Лутше привести текст к формату *.csv (разделитель запятые/точка с запятой)
"Иванов";"Иван";"Иванович";20.01.1967
и читать/писать стандартными средствами (выбрать),
например через ADO + Jet. запись/чтение выльется в простой запрос.
Если текст не "стандартизируется" см. up.


 
VAleksey   (2003-01-05 08:56) [4]

Если я не ошибаюсь, то BDE (и соответственно TTable) могут читать таблицу из структурированного текстового файла.


 
Gennadye   (2003-01-05 10:19) [5]

Можно так:
var
F: TextFile;
StateName: String[20];
CapitalName: String[20];
begin
tblCapitals.Open;
// Assign the file to the columnar text file.
AssignFile(F, "USCAPS.TXT");
// Open the file for read access.
Reset(F);
try
while not Eof(F) do
begin
{ Read a line of the file into the two strings each of whose length
matches the number of characters that make up the column. }
Readln(F, StateName, CapitalName);
// Now store both strings into separate columns in a Paradox table
tblCapitals.Insert;
tblCapitals["State_Name"] := StateName;
tblCapitals["State_Capital"] := CapitalName;
tblCapitals.Post;
end;
finally
CloseFile(F); // Close the file when finished.
end;
end;


 
kolesya   (2003-01-05 13:08) [6]

А рабочий пример с TTable для упорядоченого текстового файла кто-то может бросить? Сам сейчас копаю перегон из ТХТ в БД, но путь нашёл только один:
1. Разбиваешь строку на "поля"
2. Записываешь в БД
Может я чегото не допонял с TTable


 
Ahmad K   (2003-01-06 05:21) [7]


>var textf: TextFile;
>fam, s, name1, name2, data: String;
>begin
>AssignFile(textf,"название_твоего_файла.txt");
> Repeat
> readln(textf,s);
> Fam:=Copy(s,1,pos("*",s)-1);
> Delete(s,1,pos("*",s));
> Name2:=Copy(s,1,pos("*",s)-1);
> Delete(s,1,pos("*",s));
> Name3:=Copy(s,1,pos("*",s)-1);
> Delete(s,1,pos("*",s)); {анналогично}
> Data:=s;
> Fields[1].asString:=Fam;
> Fields[2].asString:=Name1;
> Fields[3].asString:=Name2;
> Fields[4].asString:=Data;
> Append(textf);
> Until eof(textf);

На такое мне выдают Ошибку: "Error: I/O error 104"
Как от нее избавиться, и что это вообще такое.


 
Big_Rom   (2003-01-06 05:41) [8]

>AssignFile(textf,"название_твоего_файла.txt");
Reset(textf);
дальше все также


 
Kair   (2003-01-06 06:07) [9]

procedure TForm1.FormCreate(Sender: TObject);
begin
i:=1;
end;

procedure TForm1.Button1Click(Sender: TObject);
var textf: TextFile;
fam,s,name1,name2,name3,data: String;
begin
AssignFile(textf,"название_твоего_файла.txt");
reset(textf);
repeat
readln(textf,s);
Fam:=Copy(s,1,pos("*",s)-1);
Delete(s,1,pos("*",s));
Name2:=Copy(s,1,pos("*",s)-1);
Delete(s,1,pos("*",s));
Name3:=Copy(s,1,pos("*",s)-1);
Delete(s,1,pos("*",s));
Data:=s;
StringGrid1.Cells[1,i]:=Fam;
StringGrid1.Cells[2,i]:=Name2;
StringGrid1.Cells[3,i]:=Name3;
StringGrid1.Cells[4,i]:=Data;
i:=i+1;
until EOF(textf)
end;

{ Перед циклом написать reset(textf);
Убрать Append(textf);
И небудет "Error: I/O error 104"}


 
Карелин Артем   (2003-01-06 12:23) [10]

В комплекте с дельфиной есть TextDataSet. Лежит в виде компонента в примерах. Требует установки.


 
Сергєєв Володимир   (2003-01-06 18:16) [11]

А на фиг тебе экспорт из текстового файла ? Хочешь сказать, что есть готовая набитая база, а тебе надо ее переконвертить ?

Возьми M$ Excel и открой файл через Файл/Открыть/Все файлы, а потом сохрани его в виде *.DB или *.DBF


 
Ahmad K   (2003-01-08 02:44) [12]


> А на фиг тебе экспорт из текстового файла ? Хочешь сказать,
> что есть готовая набитая база, а тебе надо ее переконвертить
> ?

Нет. Вся проблема в том что мне надо сделать базу ввиде текстешника и представлять ее в ввиде таблицы в проге в ввиде таблицы. Т.к. если сделать ее ввиде базы .db то она не идет на компах где не установлен BDE.


 
VAleksey   (2003-01-08 07:21) [13]

Во так :))
А BDE нельзя установить клиенту ?


 
Anatoly Podgoretsky   (2003-01-08 07:41) [14]

http://www.kylecordes.com/bag/index.html


 
Карелин Артем   (2003-01-08 11:33) [15]

Так проблема именно в BDE?? Дык есть множество компонентов, работающих без BDE и воовще не требующих внешних библиотек.



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

Форум: "Базы";
Текущий архив: 2003.01.27;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.48 MB
Время: 0.01 c
3-86720
Пентюх
2003-01-07 18:18
2003.01.27
Список активных MS SQL серверов


6-86994
Vlad-Sh
2002-11-29 06:33
2003.01.27
Не могу задать порт источника в TIdUDPClient (Delphi 6)


7-87151
Zolen
2002-11-13 18:10
2003.01.27
Открытие CD Rom на удаленном компе


14-87146
Mixerl
2003-01-10 13:47
2003.01.27
Help по MS XML 4.0


1-86936
anod
2003-01-16 21:42
2003.01.27
Как мне реализовать





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