обработка текстового файла в MySQL БД

C
На сайте с 09.10.2005
Offline
128
1424

Существует некий текстовой файл с базой тестов. пример файла ниже.

Нужно извлечь из него всю информацию и записать ее в бд.

Извлекаться должа по строкам. Различайтеся по знакам в начале строки.

V1:

V2:

V3:

I:

S: {формулировка задания}

+: {правильный ответ}

-: {неправельный ответ}

+: {правильный ответ}

Есть строка с темой - V1

Есть номера вопросов I:

Есть сами вопросы S:

И ответы +: и -:

Каждый новый вопрос отделяется одной пустой строчкой или двумя.

Каждая тема так же.

Вот и стоит задача - написать обработчик такого файла.

Чтобы он обрабатывал весь файл, записывал его в бд.

Кто-нибудь может помочь на примере? Прошу объяснить, как это сделать и по возможности дать ссылочку на пример или написать пример ниже.

Заранее ОГРОМНОЕ СПАСИБО!

Часть файла:

V1: Раздел 1. Деньги и денежная система.

V2: 1.Сущность и функции денег.

I: {{5}}

S: Деньги - особый вид ### , специфические свойства которого выделяют его из общей товарной массы и превращают во всеобщий эквивалент всех товаров.

+: товара

I: {{6}}

S: Функции денег:

+: мера стоимости

+: средство обращения

+: средство платежа

-: средство всеобщего обмена

+: средство накопления и образования сокровищ

+: мировые деньги

I: {{7}}

S: Для осуществления функции ### деньги существуют виртуально:

+: мера стоимости

-: средство обращения

-: средство платежа

-: средство накопления и образования сокровищ

-: мировые деньги

I: {{8}}

S: Как средство ### деньги используются при товарообменных операциях.

+: обращения

I: {{9}}

S: Как средство ### деньги используются при оплате финансовых обязательств, когда поставка товаров и их оплата осуществляется в разные сроки.

+: платежа

I: {{10}}

S: В качестве ### деньги выступают в своей изначальной форме полноценного денежного товара- золота.

+: мировых денег

I: {{11}}

S: Особая функция денег заключается в том, что деньги выступают в роли:

-: меры стоимости

-: средства обращения

-: средства платежа

+: средства накопления и образования сокровищ

-: мировых денег

I: {{12}}

S: ### - это совокупность денежных средств, обслуживающих процесс производства, распределения и перераспределения внутреннего валового продукта (ВВП).

+: денежная масса

I: {{14}}

S: Денежная база отличается от денежной массы

+: денежная база- часть денежной массы

-: денежная база = денежной массы

-: денежная масса- часть денежной базы

I: {{26}}

S: Установить соответствие:

L1: заместители денег

L2: действительные деньги

R1: бумажные и кредитные деньги

R2: монеты

I: {{44}]

S: Установить соответствие:

L1: банкноты

L2: казначейские билеты

R1: Центральный банк

R2: Казначейство

I: {{130}}

S: Упорядочить по времени возникновения

1: колесо

2: деньги

3: ракета

4: интернет

Слово не воробей! Вылетит - не поймаешь.
Russian
На сайте с 10.12.2005
Offline
69
#1

Честно говоря нет времени вникать в тексты ваших файлов, но я в таких случаях пользуюсь софтом MySQL-Front, скачайте, попробуйте.

Коннектитесь к базе, далее Import Textfile, настраиваете параметры разделения столбцов, конца строки и огонь. Очень хорошо импортируются csv-файлы, которые можно получить из экселя, например. Да и вообще любые текстовики, надо только привести их в порядок, далее поочередно загружать в таблицы.

C
На сайте с 09.10.2005
Offline
128
#2

Это не то.

Задача не в этом.

Нужен скрипт, который бет привязан к системе.

это одна из функций системы - обновление БД новым файлом.

antono
На сайте с 12.07.2004
Offline
285
#3

Вот кусок моего скрипта

if (substr_count($txt[$i], 'id=')) {

$pos1=strpos($txt[$i], 'id=')+3;

$temp=substr($txt[$i],$pos1,strlen($txt[$i])-$pos1);

$pos2=strpos($txt[$i], '"'); ///здесь символ где нужно обрезать строку

$id = substr($txt[$i],$pos1,$pos2);

}

id= это слово которое стоит перед началом нужного текста в строке

$txt это массив с данными

sniffer
На сайте с 15.12.2005
Offline
79
#4

Сколько ??

BeeR or not to BeeR? (вот в чем вопрос)

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий