LINUX.ORG.RU
решено ФорумTalks

Массовое переименование музыки


1

1

Имеется на диске дискография одной группы, всё разложено по папочкам и файлы называются «01 из CDImage.mp3» и так далее по порядку. Надо закинуть некоторые песни на плеер без разделения на папки, но из-за одинаковых имён это не очень удобно, да и потом удобнее будет когда написаны названия песен. В проигрывателях на компьютере они называются так как и должны называться, значит где-то хранится название этих песен. Вот и вопрос: как осуществить такое переименование?


значит где-то хранится название этих песен.

Фейспалм. Тегами это называется. И редактор тегов с нужной функциональностью, думаю, найти не проблема.

Sadler ★★★
()
    private List<String> filesToCopy = new ArrayList<String>();

    public void recursiveTraversal(File fileObject) {
        if (fileObject.isDirectory()) {
            File allFiles[] = fileObject.listFiles();
            for (File aFile : allFiles) {
                recursiveTraversal(aFile);
            }
        } else if (fileObject.isFile()) {
            while (filesToCopy.contains(fileObject.getName())) {
                rename(fileObject);
            }
            copyFile(fileObject,myFlashDisk);
            filesToCopy.add(fileObject.getName());
        }
    }

recurseTraversal(new File(«C:\\svalka»));

stevejobs ★★★★☆
()
Ответ на: комментарий от stevejobs

Если это такой намек, что линуксоид сам себе пишет софт, то нужно было выбрать другой язык или хотя бы написать методы для чтения тегов. ;-)

f1xmAn ★★★★★
()
#!/usr/bin/perl

use strict;
use utf8;
use open qw(:std :utf8);
use MP3::Tag;
use feature qw(say);

opendir my $dir, "$ARGV[0]";
my @files = readdir $dir;
chdir "$ARGV[0]";

foreach (@files) {
  next unless -f "$_";
  next unless $_ =~ /mp3$/;
  utf8::decode($_);
  print "File: $_ => ";
  my $mp3 = MP3::Tag->new($_);
  my @tags = $mp3->autoinfo;
  my $fn = sprintf "%02d - %s.mp3", $tags[1], $tags[0];
  say $fn;
  `mv "$_" "$fn" `;
};
closedir $dir;
redgremlin ★★★★★
()

А плеер не может в теги?

StReLoK ☆☆
()

В Cantata есть менюшка Organize Files, там можно обозвать файлы соответственно тегам.

templarrr ★★★★★
()
Ответ на: комментарий от f1xmAn

то нужно было выбрать другой язык

лор снова торт =)

stevejobs ★★★★☆
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.