On Jul 27, 10:04 pm, Steven D'Aprano <[EMAIL PROTECTED]> wrote: > On Sat, 28 Jul 2007 03:10:32 +0000, GreenH wrote: > > I get some string as below from a library method (qt3 > > QDropEvent.data()) I use. > > file:///C:/Documents%20and%20Settings/Username/My%20Documents/45-61-Abc%20fold-%20den.vru > > > I need file path on my system, for the above example: > > C:/Documents and Settings/Username/My Documents/45-61-Abc fold- > > den.vru > > > I am doing the below, it doesn't look pythonic, > > can someone suggest any elegant solution, which is not too cryptic to > > understand? yep, I do care about readability of the code to average > > python user :) > > Try this: > > import urlparse, sys > fileURLname = ("file:///C:/Documents%20and%20Settings/Username/" > "My%20Documents/45-61-Abc%20fold-%20den.vru") > pathname = urlparse.urlparse(fileURLname)[2] > if sys.platform == "win32": > import nturl2path > clean = nturl2path.url2pathname(pathname) > else: > import urllib > clean = urllib.unquote(pathname) > print clean > > > -------------------- > > tmpTuple = urlparse.urlparse(fileURLname) > > > tmpString = tmpTuple[2].strip('/\\') > > > fileName = urllib.unquote(tmpString) > > > #For some reason the string contained in 'fileName' has some > > unprintable trailing characters, Any ideas on that? > > It works for me: No trailing characters at all, printable or otherwise. > > >>> len(fileName.split('.vru', 1)[1]) > > 0 > > -- > Steven.
Hi! Thanks for the reply. The unprintable character was null byte. -Greene. -- http://mail.python.org/mailman/listinfo/python-list