2009-08-02 4 views
0

私はフォルダ内のすべての音楽ファイルのインデックスを作成し、自分のシステム上のデフォルトアプリケーションでランダムに(繰り返しなしで)再生しようとしています。例: ogg - itunes mp3 - WMP mp4 - quicktime これに役立つチュートリアルはありますか?ありがとう!C#Windowsアプリケーションプログラミング:フォルダからすべてのファイルをインデックスし、既定のアプリケーションでランダムに再生しますか?

答えて

2

ファイルのリストを取得したら、それらの(擬似)ランダムな順列を思い付くには、Knuth-Fisher-Yatesのようなシャッフルアルゴリズムが必要です。あなたは、単一のファイル名を持っていて、デフォルトのアプリケーションで開きたい場合は

、あなたはおそらく使用することができます。

System.Diagnostics.Process.Start(mp3FileName); 

も参照MSDN documentation on Process.Startを。

これは、シャッフルの順番どおりにファイルをダブルクリックするのと同じように動作します。あなたのメディアプレーヤーによって、それは十分かもしれません。ただし、各メディアファイルの長さを何とか知っていなければ、次のメディアファイルを再生するまでどれくらい待つか分からず、音楽プレーヤーがメディアファイルを再生するのを待つ方法がないとは思わない各プレーヤーに固有の特別なケースのコードを有する。

ProcessStartInfoオブジェクトの動詞プロパティを使用して、「エンキュー」などを選択することができます。もう一度、MSDNにはあなたに役立つ追加のinformation on ProcessStartInfo.Verbがいくつかあります。

関連する問題