예제 #1
0
		static void ScanDirectory(string path)
		{
			DirectoryInfo dir = new DirectoryInfo(path);
			
			Console.WriteLine("DIRECTORY " + path);

			Soundfile myfile;

			foreach (FileInfo file in dir.GetFiles() ) 
			{
				Console.WriteLine(file.Name);
				myfile = new Soundfile(path + @"\" + file.Name);
				myfile.RetrieveTagInfo();
				myfile.ID = CurrentFileID;
				CurrentFileID++;

				myfile.FileName = @"target\A\A"+(myfile.ID -1).ToString("000000")+".mp3";
				file.CopyTo(myfile.FileName,true);
				File.SetAttributes(myfile.FileName, FileAttributes.Archive);

				if (myfile.Artist != null) 
				{
					long aid = Artists.IndexOf(myfile.Artist);
					if (aid != -1) myfile.ArtistID = aid;
					else 
					{
						myfile.ArtistID = Artists.Add(myfile.Artist);
					}
				}
				Console.WriteLine(" " + myfile.Artist+" ("+myfile.ArtistID+") / " + myfile.Title + " (" + myfile.Album + ")");
				Soundfiles.Add(myfile);

			}

			foreach (DirectoryInfo subdir in dir.GetDirectories())
			{
				ScanDirectory(path + @"\" + subdir.Name);	
			}
		}
 public void Remove(Soundfile objItemToRemove)
 {
     List.Remove(objItemToRemove);
 }
 public int Add(Soundfile objItemToAdd)
 {
     return (List.Add(objItemToAdd));
 }