Igor, why don't you try and use "the detailed files", URLDecode it and parse out the filenames? Perhaps URLDecoding can preserve those characters.
just a thought. Not tested. ------------------------- Stephen Barncard San Francisco http://houseofcubes.com/disco.irev On 20 February 2010 13:48, Igor de Oliveira Couto <[email protected]>wrote: > Dear List Members, > > I am trying to write a reasonably simple test script, which would iterate > through every file in a chosen directory, and give me the md5 checksum for > that file. I am coming across a problem, which *may* be related to Unicode, > but I'm not certain. The algorithm is like this: > > * user selects directory > * get list of files in directory (using 'the files') > * for every file in the list: > ** get the file data stream (using 'get URL "binfile:..."') > ** get the checksum > > The function that gets the datastream using 'get URL' returns 'empty' in > case it cannot find the file. I am finding, that when a file has certain > accented or foreign characters in its name, 'get URL' is unable to find it - > even though it is using the original unmodified string returned by 'the > files'... What is most puzzling, is that this does not happen with *every* > file that has an international character in it - files with french, spanish, > german or even scandinavian characters fly through without a hitch. But if I > have a file that has a "ĉ" (c+circumflex) or "ŭ" (u+breve) in its name, for > instance, it chokes. > > Am I doing something wrong, or missing something basic? - or did I hit a > limitation, or bug? > > Many thanks for any guidance, > > -- > Igor de Oliveira Couto > Sydney, Australia > > > PS - the code in full, for those interested: > > 1) Make a new Mainstack, and add a field named "folderContents", and a > button. > 2) Put the following into the button's script: > > on mouseUp > answer folder "Please select a folder:" > if it is empty then exit mouseUp > local tDefault, tItems > put the defaultFolder into tDefault > set the defaultFolder to it > put empty into field "folderContents" > put the files into tItems > repeat for each line xLine in tItems > put "name=" & quote & xLine & quote after field "folderContents" > put " checksum=" & quote & fileDigest(the defaultFolder & "/" & xLine) > & quote & return after field "folderContents" > end repeat > filter field "folderContents" without empty > set the defaultFolder to tDefault > end mouseUp > > function hexDigest pvalue > local tRes, tMD5 > put md5Digest(pValue) into tMD5 > get binaryDecode("H*",tMD5,tRes) > return tRes > end hexDigest > > function fileDigest pFile > if there is a file pFile then > get URL ("binfile:" & pFile) > return hexDigest(it) > else > return empty > end if > end fileDigest_______________________________________________ > use-revolution mailing list > [email protected] > Please visit this url to subscribe, unsubscribe and manage your > subscription preferences: > http://lists.runrev.com/mailman/listinfo/use-revolution > _______________________________________________ use-revolution mailing list [email protected] Please visit this url to subscribe, unsubscribe and manage your subscription preferences: http://lists.runrev.com/mailman/listinfo/use-revolution
