GetInvalidPathChars not listing all invalid path chars

I am writing a .NET program using c# and ran across this.

GetInvalidPathChars doesnt seem to return a question mark but windows will not allow me to create a folder with a question mark in it.  This makes me think the list returned by GetInvalidPathChars is incomplete (thus useless for preventing errors).  Is there something else i should be using in my function to remove invalid characters from a string (that will be used to create a file name)?

Thanks,
LVL 15
dave4dlAsked:
Who is Participating?

[Product update] Infrastructure Analysis Tool is now available with Business Accounts.Learn More

x
I wear a lot of hats...

"The solutions and answers provided on Experts Exchange have been extremely helpful to me over the last few years. I wear a lot of hats - Developer, Database Administrator, Help Desk, etc., so I know a lot of things but not a lot about one thing. Experts Exchange gives me answers from people who do know a lot about one thing, in a easy to use platform." -Todd S.

Arabia_vnCommented:
Yes that method is totally useless since it does return invalid characters but not ALL. I think you better use System.IO.Path.GetInvalidFileNameChars instead. Read this http://msdn.microsoft.com/en-us/library/system.io.path.getinvalidfilenamechars.aspx
0
anarki_jimbelSenior DeveloperCommented:
Arabia_vn is completely right: "The array returned from this method is not guaranteed to contain the complete set of characters that are invalid in file and directory names. "  (http://msdn.microsoft.com/en-us/library/system.io.path.getinvalidpathchars.aspx)

However MS does not guarantee the right output for another method:
http://msdn.microsoft.com/en-us/library/system.io.path.getinvalidfilenamechars(v=VS.100).aspx

So the above suggestion is not quite right. On another hand, the second method returns "?".

I'd probably write my own procedure to limit characters to Latin alphabet, digits, space, underscore and might be couple another characters...

0

Experts Exchange Solution brought to you by

Your issues matter to us.

Facing a tech roadblock? Get the help and guidance you need from experienced professionals who care. Ask your question anytime, anywhere, with no hassle.

Start your 7-day free trial
dave4dlAuthor Commented:
Thank you both for your help.  I ended up writing my own function to ensure my file name was ok.
0
It's more than this solution.Get answers and train to solve all your tech problems - anytime, anywhere.Try it for free Edge Out The Competitionfor your dream job with proven skills and certifications.Get started today Stand Outas the employee with proven skills.Start learning today for free Move Your Career Forwardwith certification training in the latest technologies.Start your trial today
.NET Programming

From novice to tech pro — start learning today.