Фрилансеры предложат решение вашей задачи уже через несколько минут!

Публикация заказа на фриланс бирже не займет много времени.

11 месяцев назад
Алексей
45 лет, Россия
12 лет в сервисе
Был онлайн 56 минут назад
31 отзыв
100% фрилансеров рекомендуют 24% заказов с выбором исполнителя
11 месяцев назад

Здравствуйте!

Требуется программа для обработки списков фраз в файле.

1. Имеется файл "Категории.txt" со структурой категорий, вида: 
<category id="21959">Швейная галантерея/Принадлежности для вязания/Аксессуары для вязания
<category id="21961">Швейная галантерея/Фурнитура для штор
<category id="21962">Швейная галантерея/Фурнитура для штор/Подхваты для штор
<category id="21965">Швейная галантерея/Фурнитура для штор/Крючки, зажимы, кольца
<category id="21966">Швейная галантерея/Фурнитура для штор/Шторная лента
<category id="21967">Одежда и обувь/Мужская одежда/Футболки, майки/Футболки поло
<category id="21968">Швейная галантерея/Фурнитура для нижнего белья
<category id="21970">Швейная галантерея/Фурнитура для нижнего белья/Косточки для бюстгальтеров
<category id="21971">Швейная галантерея/Фурнитура для нижнего белья/Застёжки
<category id="21978">Мебель/Мебель для прихожей/Вешалки в прихожую
<category id="21979">Одежда и обувь/Детская одежда/Одежда для спорта
<category id="21980">Одежда и обувь/Детская одежда/Одежда для спорта/Одежда для гимнастики
<category id="21984">Красота и здоровье/Гигиена/Ватная продукция/Ватные диски

2. Загружаем файл в программу через диалоговое окно, при загрузке удаляем все спецсимволы и знаки, прописанные в файле настроек программы - "ini.txt" (запятые, спецсимволы и т.д.)

3. При загрузке, в первую колонку выводим все уникальные варианты фраз между ">" и "/", между "/" и "/", между "/" и "<", в виде:
Швейная галантерея
Принадлежности для вязания
Аксессуары для вязания
Фурнитура для штор
Подхваты для штор
и т.д.

   Сортировку вывода фраз в первой колонке производим, в зависимости с уровнем вложенности категории, начиная с максимально вложенных, например:
   Из строки: <category id="21980">Одежда и обувь/Детская одежда/Одежда для спорта/Одежда для гимнастики выводим в колонку сначала "Одежда для гимнастики", а категории первого уровня, например, "Одежда и обувь" выводим в конце списка.
   Эту часть строк: <category id="..."> в колонку не выводим.
   
4. При переходе по фразам в первой колонке (при помощи стрелок "вверх"-"вниз"), ВСЕ категории из файла "Категории.txt" имеющие вхождение фразы из первой колонки, выводим в виде древовидной структуры:

   Например, список:
Одежда и обувьДетская одежда/Одежда для спорта
Одежда и обувь/Детская одежда/Одежда для спорта/Одежда для гимнастики
Одежда и обувь/Детская одежда/Одежда для спорта/Спортивные брюки для мальчиков
Одежда и обувь/Детская одежда/Одежда для спорта/Спортивные брюки для девочек
Детские товары/Детская одежда и обувь/Одежда для спорта
Детские товары/Детская одежда и обувь/Одежда для спорта/Спортивные брюки для мальчиков
Детские товары/Детская одежда и обувь/Одежда для спорта/Спортивные костюмы для мальчиков
Детские товары/Детская одежда и обувь/Одежда для спорта/Спортивные костюмы для девочек
Детские товары/Детская одежда и обувь/Одежда для спорта/Одежда для гимнастики
Одежда и обувь/Детская одежда/Одежда для спорта/Одежда для фигурного катания
Одежда и обувь/Детская одежда/Одежда для спорта/Одежда для фигурного катания/Кофты, толстовки, водолазки
Детские товары/Детская одежда и обувь/Одежда для спорта/Спортивные брюки для девочек
Одежда и обувь/Детская одежда/Одежда для спорта/Одежда для гимнастики/Гимнастические купальники
Детские товары/Детская одежда и обувь/Одежда для спорта/Одежда для гимнастики/Гимнастические купальники
Одежда и обувь/Детская одежда/Одежда для спорта/Одежда для гимнастики/Гимнастические костюмы и комплекты
Детские товары/Детская одежда и обувь/Одежда для спорта/Одежда для гимнастики/Гимнастические костюмы и комплекты
Одежда и обувь/Детская одежда/Одежда для спорта/Одежда для гимнастики/Лосины
Детские товары/Детская одежда и обувь/Одежда для спорта/Одежда для гимнастики/Лосины

Выводим во второй колонке в таком виде:

Одежда и обувь
Детская одежда
Одежда для спорта
Одежда для гимнастики
Гимнастические купальники
Гимнастические костюмы и комплекты
Лосины
Спортивные брюки для мальчиков
Спортивные брюки для девочек
Одежда для фигурного катания
Кофты, толстовки, водолазки

******************************************************************* - разделитель 

Детские товары
Детская одежда и обувь
Одежда для спорта
Спортивные брюки для мальчиков
Спортивные костюмы для мальчиков
Спортивные костюмы для девочек
Спортивные брюки для девочек
Одежда для гимнастики
Гимнастические купальники
Гимнастические костюмы и комплекты
Лосины

5. Перемещения по колонкам производятся при помощи стрелок "Вправо"-"Влево", внутри колонок - стрелками "Вверх" - "Вниз".

6. При нахождении курсора во второй колонке на строке, например: "Спортивные брюки для мальчиков", при нажатии "Enter" или двойной клик мыши (оба варианта), активируем режим редактирования строки.
   Возможность копирования фразы из строки "Ctrl+C" и вставки в строку "Ctrl+V"
   После правки строки, например, новое значение - "Спортивные брюки для крутых мальчиков", завершаем режим редактирования фразы - "Ctrl+S"
   
   После сохранения фразы во второй колонке, автоматически перезаписываются все значения строк в исходном локальном файле "Категории.txt" в соответствии со структурой исправленной категории/подкатегории.
   Обработанная строка дерева категории подсвечивается как отредактированная.
   Подсветка запоминается программой, чтобы при обновлении данных в окнах по клавише "F5", данная подсветка сохранялась.
   Обновление данных в окнах программы - по клавише "F5"
   Удаление всей ветки категории при положении курсора на корневой категории - "DELETE" с всплывающим диалоговым окном подтверждения удаления (во избежании случайного нажатия "DELETE").
   
   Удаление промежуточной категории при положении курсора на строке категории - "DELETE" с всплывающим диалоговым окном подтверждения удаления (во избежании случайного нажатия "DELETE").

   Например, после удаления промежуточной категории "Одежда для спорта", мы должны получить в колонке и в файле "Категории.txt" из структуры категории:

Одежда и обувь
Детская одежда
Одежда для спорта
Одежда для гимнастики
Гимнастические купальники
Гимнастические костюмы и комплекты
Лосины
Спортивные брюки для мальчиков
Спортивные брюки для девочек
Одежда для фигурного катания
Кофты, толстовки, водолазки
   такую структуру:

Одежда и обувь
Детская одежда
Одежда для гимнастики
Гимнастические купальники
Гимнастические костюмы и комплекты
Лосины
Спортивные брюки для мальчиков
Спортивные брюки для девочек
Одежда для фигурного катания
Кофты, толстовки, водолазки

Общее количество строк в локальном файле "Категории.txt" - 24 000 строк.
При загрузке сюда ТЗ нарушается структура.
Полное ТЗ с правильной структурой отображения категорий - во вложенном файле.

  1. Прием заявок
  2. Выбор исполнителя
  3. Выполнение заказа
  4. Обмен отзывами
Артём Лихенко
35 лет, Украина
13 лет в сервисе
Был онлайн 2 месяца назад
11 месяцев назад

Безопасный платеж

Павел Д.
Павел Д. 
35 лет, Россия
11 месяцев в сервисе
Был онлайн 11 месяцев назад
11 месяцев назад
Михаил С.
21 год, Россия
4 года в сервисе
Был онлайн 9 часов назад
11 месяцев назад
Вячеслав К.
32 года, Молдова
2 года в сервисе
Был онлайн 19 часов назад
11 месяцев назад

Безопасный платеж

Ильдар В.
41 год, Россия
11 лет в сервисе
Был онлайн 19 часов назад
11 месяцев назад

Другие заказы в категории «Прикладное ПО»

Здесь заказчик и фрилансеры могут обсуждать заказ до начала его выполнения.
Фрилансеры могут участвовать в обсуждении только после подачи заявки.
Здесь заказчик будет контролировать выполнение заказа и общаться с исполнителем.
Доступ к этому разделу имеют только заказчик и выбранный исполнитель.
Все материалы этого раздела закрыты от поисковых систем.