By using this site, you agree to our updated Privacy Policy and our Terms of Use. Manage your Cookies Settings.
443,889 Members | 1,373 Online
Bytes IT Community
+ Ask a Question
Need help? Post your question and get tips & solutions from a community of 443,889 IT Pros & Developers. It's quick & easy.

Random file from a directory

P: n/a
Hi,

I have been stuck on this for a few days now and have given up
trawling through pages and pages of google results..

I'm just putting the finishing touches to a small game I've written.
The game uses the FMOD sound library to play an MP3 as background
music. I got slightly bored of listening to the same song over and
over and realised it would be much nicer if the game could pick an MP3
at random from a folder...

Problem is, I can't figure out how to get the game to pick a random
file from a folder. I've been searching google for days and found
nothing of any use...

Any ideas, anyone?
Jul 22 '05 #1
Share this Question
Share on Google+
4 Replies


P: n/a
On 31 Aug 2004 18:19:09 -0700, so********@gmail.com (SoulSniper) wrote
in comp.lang.c++:
Hi,

I have been stuck on this for a few days now and have given up
trawling through pages and pages of google results..

I'm just putting the finishing touches to a small game I've written.
The game uses the FMOD sound library to play an MP3 as background
music. I got slightly bored of listening to the same song over and
over and realised it would be much nicer if the game could pick an MP3
at random from a folder...

Problem is, I can't figure out how to get the game to pick a random
file from a folder. I've been searching google for days and found
nothing of any use...

Any ideas, anyone?


By the use of the lame Microsoft-ism "folder" for what everyone else
in the world called a directory, I'd suggest you ask in
news:comp.os.ms-windows.win32.programmer or one of Microsoft's
supports groups in the news:microsoft.public.vc.* family.

It's off-topic here because standard C++ has no support whatsoever for
"folders", or even real directories.

--
Jack Klein
Home: http://JK-Technology.Com
FAQs for
comp.lang.c http://www.eskimo.com/~scs/C-faq/top.html
comp.lang.c++ http://www.parashift.com/c++-faq-lite/
alt.comp.lang.learn.c-c++
http://www.contrib.andrew.cmu.edu/~a...FAQ-acllc.html
Jul 22 '05 #2

P: n/a
"SoulSniper" <so********@gmail.com> wrote in message
news:17**************************@posting.google.c om...
Hi,

I have been stuck on this for a few days now and have given up
trawling through pages and pages of google results..

I'm just putting the finishing touches to a small game I've written.
The game uses the FMOD sound library to play an MP3 as background
music. I got slightly bored of listening to the same song over and
over and realised it would be much nicer if the game could pick an
MP3
at random from a folder...

Problem is, I can't figure out how to get the game to pick a random
file from a folder. I've been searching google for days and found
nothing of any use...


The easiest way would be to store every filename in a std::vector<
std::string > and get a random number between 0 and vector::size().
The random file would be vector[number].

Vladimir Ciobanu
Jul 22 '05 #3

P: n/a
SoulSniper wrote:
Hi,

I have been stuck on this for a few days now and have given up
trawling through pages and pages of google results..

I'm just putting the finishing touches to a small game I've written.
The game uses the FMOD sound library to play an MP3 as background
music. I got slightly bored of listening to the same song over and
over and realised it would be much nicer if the game could pick an MP3
at random from a folder...

Problem is, I can't figure out how to get the game to pick a random
file from a folder. I've been searching google for days and found
nothing of any use...

Any ideas, anyone?


Assuming N to be the number of files in the given directory, the
given problem reduces to picking a random number generator in the range
1 .. N . Look for a good random number generator, ( I am sure boost
library should have one) and that should get your job done.

--
Karthik.
Jul 22 '05 #4

P: n/a

"Jack Klein" <ja*******@spamcop.net> wrote in message
news:96********************************@4ax.com...
On 31 Aug 2004 18:19:09 -0700, so********@gmail.com (SoulSniper) wrote

By the use of the lame Microsoft-ism "folder" for what everyone else
in the world called a directory, I'd suggest you ask in
news:comp.os.ms-windows.win32.programmer or one of Microsoft's
supports groups in the news:microsoft.public.vc.* family.


FYI, the (fairly) new Mac operating system, OS X, refers to those as
"folders" as well, and even displays icons on the desktop as your typical
office folders. So... not "everyone else in the world" calls them
directories.

As for how to accomplish the task, you're right that methods for listing
directory (or folder) contents is off-topic here.

However, a hint might be given, that you could read the directory list into
a container, select a random index into that container, and then attempt to
use the file referenced by that entry. (But don't forget the obvious...to
include some kind of protection against the file you want no longer being
there!)

-Howard

Jul 22 '05 #5

This discussion thread is closed

Replies have been disabled for this discussion.