Web lists-archives.org

Re: [Mingw-users] looking for tiny light cross platform filesystem library




> i need in my application to to get all files names

If you really mean *all* file names, then one thing you must look out
for carefully is the fact that file names on Windows (NTFS and
presumably CIFS volumes, at least) are in Unicode (UTF-16) on the file
systems (volumes) and in the kernel. You must look for a library that
takes this into account. A library that returns file names just as
plain char* strings in the system codepage (i.e. the encoding used by
C library functions like fopen() and open()) on Windows won't be able
to return all possible file names.

As your domain is .il, you might even come across such file names
regularly. I mean file names in Hebrew or Arabic on English Windows
boxes.

I don't know if GLib is small enough for you, but GLib is
cross-platform, and on Windows its functions take and return file
names encoded in UTF-8, which thus is able to represent all possible
file names on Windows.

> and [their] properties ( read write executable and so on ) but cross platform

Here GLib does not really offer any good solution. Note that
especially the concept of executability is not really well defined. If
a file on POSIX has execute permission for the program, but in fact is
not an executable binary file for the machine architecture in
question, nor a script for an interpreter that would exist on the
machine, is it still executable in your opinion?

In general file protections are handled very differently on
POSIX-based systems (the well-known rwxrwxrwx bits) and Windows
(FAT-style readonly attribute plus ACLs). Some POSIX file systems also
have ACLs.

And for a file stored on network file servers, you really can never
know if the protection information the file server claims for it is
just fake and doesn't match the actual protection applied when opening
the file... The only 100% sure way to know if you can read or write to
a file is to try. The same for executing a file.

--tml

-------------------------------------------------------------------------
This SF.net email is sponsored by the 2008 JavaOne(SM) Conference 
Don't miss this year's exciting event. There's still time to save $100. 
Use priority code J8TL2D2. 
http://ad.doubleclick.net/clk;198757673;13503038;p?http://java.sun.com/javaone
_______________________________________________
MinGW-users mailing list
MinGW-users@xxxxxxxxxxxxxxxxxxxxx

You may change your MinGW Account Options or unsubscribe at:
https://lists.sourceforge.net/lists/listinfo/mingw-users