Північно-Кавказький гірничо-металургійний інститут
(Державний Технологічний університет)
Курсова робота
з дисципліни Програмування на Delphi
Програма для роботи з тегами файлів .mp3
г. Владикавказ, 2015
Завдання на курсову роботу
Основне завдання: Написати програму для роботи з тегами .mp3 файлів.
Необхідні функції: a) Дозволити користувачеві задавати довільну директорію, що містить музичні файли.
б) Програма залежно від функціональності здійснює пошук або рекурсивний пошук файлів в цій директорії і формує csv-файл наступним чином: абсолютний шлях до mp3-файлу, назва, виконавець, альбом, рік. жанр.
в) Роздільник csv-файлів задається користувачем.
г) Можливе виконання оберненої задачі: користувач задає csv-файл аналогічного формату, програма виправляє теги в музичних файлах відповідно до даних, що містяться в зазначеному csv-файлі.
Метод рішення.
Так як програма повинна мати графічний і інтуїтивно-зрозумілий інтерфейс, то для вирішення дуже підходить Delphi. Була обрана і визнана найбільш придатною версія 7.0.
програма файл тег музичний
1. Вхідні і вихідні дані
Вхідні дані:
Користувач вводить при використанні функції завантаження mp3-файлів роздільник csv-файлу в рядку введення і вибирає директорія для пошуку mp3-файлів. В даному випадку mp3-файли є вхідними файлами. І далі вибирає директорію для збереження csv-файлу із завантаженими Mp3-тегами. Сsv-файла є в даному випадку вихідними даними.
Вихідні дані:
При використання функції Завантаження csv-файлу користувач вибирає csv-файл (який є вхідними даними). Після цього в mp3-файлах, зазначених у csv-файлі, відбувається корректіровака mp3-тегів. Mp3-файли в цьому випадку є вихідною інформацією.
. Список процедури і функцій
Ядро програми:
) procedure findfiles (startfolder, mask: string; tabl: TStringGrid; scansubfolders: boolean=true) - процедура шукає файли у вказаній директорії.
) procedure FormActivate (Sender: TObject) - процедура, що виконує початкові дії.
) procedure Loadmp31Click (Sender: TObject) - процедура завантаження mp3-файлів.
) procedure Exit1Click (Sender: TObject) - процедура виходу з програми.
) procedure Loadcsv1Click (Sender: TObject) - процедура завантаження csv-файлів.
) procedure About1Click (Sender: TObject) - процедура виклику форми, що описує програму.
) procedure delspace (var s: string) - процедура видалення пробілів їх рядків.
) function getmp3tag (fn: string): tmp3tag функція отримання mp3-тегів.
9) function write_probel (Count: integer; rasmer: integer): string - функція написання відсутніх прогалин.
) function SetMp3Tag (MP3Tag: TMP3Tag; FileName: string): Boolean - функція запису тегів.
) procedure del_kavychki (var s: string) - процедура видалення лапок
) procedure write_db (adress_file_local: string; tabl: TStringGrid; str: string) - процедура запису в csv-файл.
) procedure read_db (FileName: String; separator: char; tabl: TStringGrid) - процедура читання сsv-файла.
) function find_char (str: string): char -функція знаходження роздільника.
3. Вид вікон програми
Ядро програми:
Модулі:
Модуль 1 (Заставка):
Модуль 2 (Вибір директорії для сканування):
Збереження csv-файлу:
Модуль 3 (Опис програми):
4. Опис програми
Використовувані елементи.
Ядро програми:
1) MainMenu1: TMainMenu;
) File1: TMenuItem;
) Loadmp31: TMenuItem;
) Exit1: TMenuItem;
) od1: TOpenDialog;
) tabl: TStringGrid;
) Loadcsv1: TMen...