【发布时间】:2017-04-24 21:10:00
【问题描述】:
我是一个新手 C#er,这是我的问题:
我想要什么: 将同一艺术家的 mp3 文件复制到同一文件夹中。 例如。 Nirvana - Song 1 & Nirvana - Song 2 放入文件夹“Nirvana”。
到目前为止我一直在做什么: 阅读 ParantDirectory 并将成分列出到列表框中。列表框只显示艺术家(当然是它的过滤(子字符串(indexof“-”)))。读取文件后,我的工具创建一个具有艺术家名称的文件夹。
我在那儿挣扎! 我需要一个将 Nirvana* 的所有内容复制到 Nirvana 文件夹的 sn-p。
我真的希望你们女孩和男孩明白我想要做什么...... 提前致谢!
来自德国的问候, 鲸鱼
编辑:“这是我的代码”
void Button1Click(object sender, EventArgs e)
{
listBox1.Items.Clear();
DirectoryInfo ParentDirectory = new DirectoryInfo(@"C:\Users\A7024985\Desktop\_xxx");
label1.Text = ParentDirectory.ToString();
foreach (FileInfo f in ParentDirectory.GetFiles())
{
listBox1.Items.Add(f.Name.Substring(0,f.Name.IndexOf("-"))); //nur den Dateinamen anzeigen in Listbox1
//listBox1.Items.Add(f.Name);
}
// DOPPELTE DATEIEN LÖSCHEN in LISTBOX
string[] temp = new string[listBox1.Items.Count];
ArrayList newList = new ArrayList();
for(int i = 0; i< listBox1.Items.Count; i++)
{
temp[i] = listBox1.Items[i].ToString();
}
foreach(string ts in temp)
{
if(!newList.Contains(ts))
{
newList.Add(ts);
}
}
listBox1.Items.Clear();
foreach(string ns in newList)
{
listBox1.Items.Add(ns.ToString());
}
foreach(var listboxitem in listBox1.Items)
{
string pfad = label1.Text + "\\" + listboxitem.ToString();
//DirectoryInfo plop = new DirectoryInfo(name);
//FileInfo[] nPath = plop.GetFiles();
try
{
bool exists = Directory.Exists(pfad);
if(!exists)
{
Directory.CreateDirectory(pfad);
}
}
catch(Exception ex)
{
MessageBox.Show(ex.Message);
}
}
}
void Button2Click(object sender, EventArgs e)
{
listBox2.Items.Clear();
DirectoryInfo ParentDirectory = new DirectoryInfo(@"C:\Users\A7024985\Desktop\_xxx");
foreach (FileInfo f in ParentDirectory.GetFiles())
{
listBox2.Items.Add(f.Name.Substring(0,f.Name.IndexOf("-")));
}
foreach(var listboxitem2 in listBox2.Items)
{
string item;
string umbenannt;
File.Copy(@ParentDirectory + "\\" + listboxitem2.ToString(), @ParentDirectory + "\\");
//listBox1.Items.Add(f.Name.Substring(0,f.Name.IndexOf("-")));
}
}
}
【问题讨论】:
-
好吧,我想我得到了你想要的,但是你愿意添加你的代码吗?否则就像在黑暗中钓鱼,你到底错过了什么
-
您只需要文件复制部分吗?
-
假设这些是
.mp3格式,you can use a library 获取这些mp3 的ID3标签,创建一个集合,并按艺术家对其进行排序,相应地创建文件夹并将它们放置在那里。 -
包括第二个文本框在内的变体只是我尝试过的一个东西......
-
我已经尝试使用 mp3 库,获取 Artist-Name 并创建文件夹,我只需要“将 Nirvana* 复制到 Nirvana 文件夹”部分