Boost logo

Boost Users :

Subject: Re: [Boost-users] Help is required to get the file names in a directory...........
From: Sean Farrow (sean.farrow_at_[hidden])
Date: 2011-07-11 11:51:08


Hi:
Yes, the filename object is a class, so in order to get a std::string-assuming your not using Unicode out for the filename, you need to call generic_string as previously stated.
If you wre using Unicode std::wstring you would call generic_string.
This will give you the filename +the extension, you can trim the extension off if you need using the string algo library-it's part of the filename object itself.
Hth
Sean.

From: boost-users-bounces_at_[hidden] [mailto:boost-users-bounces_at_[hidden]] On Behalf Of Amanullah Yasin
Sent: 11 July 2011 14:41
To: boost-users_at_[hidden]
Subject: Re: [Boost-users] Help is required to get the file names in a directory...........

Yes, i am populating a string vector.
 vector<string> listOfFiles;

Can you give some more detail?

Thanks

aman

On Mon, Jul 11, 2011 at 3:32 PM, Sean Farrow <sean.farrow_at_[hidden]<mailto:sean.farrow_at_[hidden]>> wrote:
Hi:
Where you are adding file names to the vector call the generic_string method of the file name object, and this should work.
Hth
Sean.
From: boost-users-bounces_at_[hidden]<mailto:boost-users-bounces_at_[hidden]> [mailto:boost-users-bounces_at_[hidden]<mailto:boost-users-bounces_at_[hidden]>] On Behalf Of Amanullah Yasin
Sent: 11 July 2011 13:19
To: boost-users
Subject: [Boost-users] Help is required to get the file names in a directory...........

Hello,
Before, with boost 1.38 and visual studio 2005, i was using following funtion to retrieve the file names in a folder.
Now i switched to boot 1.46.1 and visual studio 2010, but the following method is not working. Please guide me.

void Compilation::getFileNames(vector<string>& listOfFiles)
      {

      boost::filesystem::directory_iterator iterator(string("."));

      for(; iterator != boost::filesystem::directory_iterator(); ++iterator)
            {
                  cout << (iterator->path().filename())<< endl;
                  listOfFiles.push_back(iterator->path().filename()
                 );
        }

error: error C2440: 'initializing' : cannot convert from 'boost::filesystem3::path' to 'std::basic_string<_Elem,_Traits,_Ax>'

Thanks in advance.

aman

Always have your stuff when you need it with @Dropbox. 2GB account is free! http://db.tt/xOEJ2Ag

_______________________________________________
Boost-users mailing list
Boost-users_at_[hidden]<mailto:Boost-users_at_[hidden]>
http://lists.boost.org/mailman/listinfo.cgi/boost-users



Boost-users list run by williamkempf at hotmail.com, kalb at libertysoft.com, bjorn.karlsson at readsoft.com, gregod at cs.rpi.edu, wekempf at cox.net