Solved

FSO object and spaces in file names

Posted on 2004-08-19
5
298 Views
Last Modified: 2006-11-17
Good Morning all!!

I am using the FSO object to read in files that are included in a folder and then turning around and spitting them out as hyper links.

Once the user clicks on the links I am passing the file name in the query string as I reload the page for the next step in processing.

Here is the problem.  If I have spaces in the file name (as most of our docs do) then when I read in the file the name is being truncated at the first space.  I have searched the web and EE for a resolution and other then re-writing my code to use the GetFile method rather then the GetFolder method I am not sure how to read in the files in the folder that have spaces in them.

Here is a snippet of my code:

Set fso = CreateObject("Scripting.FileSystemObject")
Set folder = fso.GetFolder(fileloc)
Set files = folder.Files
i=0
For Each file in files
                  redim preserve dir2(i)
                  dir2(i)= file.name
                  redim preserve dir3(i)
                  dir3(i)= file.datelastmodified
                  redim preserve dir4(i)
                  dir4(i)= file.size
                     i = i + 1
            Next

As an aside... I know I could use a multi dimensional array rather then 3 different ones but I added them in at different times and this was easier :-/
0
Comment
Question by:lharrispv
5 Comments
 
LVL 15

Expert Comment

by:Colosseo
ID: 11841951
Hi

If you are passing the filename in the querystring you could try replacing the spaces with %20

so in your code instead of

dir2(i)= file.name

 try

dir2(i)= replace(file.name," ","%20")

Then when you read the file name from the querystring you could pass it back through to change the %20 back in to a space. so something like

filename = replace(request.querystring("filename"),"%20"," ")

Another way to do this without the querystring might be to store the file name in a hidden tag on the form. Then when you submit the form you could use Request.Form("[filename field]")

HTH

Scott
0
 
LVL 8

Author Comment

by:lharrispv
ID: 11842043
Thanx for the response!!

The problem is that by the time the name gets into the query string it is already truncated.  This is happening when I first read the file name in with FSO object.
0
 
LVL 15

Expert Comment

by:Colosseo
ID: 11842074
Hi

so in your for loop if you add a response.write

                redim preserve dir2(i)
               dir2(i)= file.name
               response.write file.name

then the output file.name is already truncated at the first space there?

Scott
0
 
LVL 19

Accepted Solution

by:
peh803 earned 250 total points
ID: 11842084
try executing server.urlencode() around the querystring value before you pass it into the querystring...this should help...

regards,
peh803
0
 
LVL 46

Expert Comment

by:fritz_the_blank
ID: 11842441
What do you get when you do this--are the names truncated here:

for i=0 to UBound(dir2)
   Response.write(dir2(i) & "<BR>")
next

FtB
0

Featured Post

Is Your Active Directory as Secure as You Think?

More than 75% of all records are compromised because of the loss or theft of a privileged credential. Experts have been exploring Active Directory infrastructure to identify key threats and establish best practices for keeping data safe. Attend this month’s webinar to learn more.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Suggested Solutions

Hello, all! I just recently started using Microsoft's IIS 7.5 within Windows 7, as I just downloaded and installed the 90 day trial of Windows 7. (Got to love Microsoft for allowing 90 days) The main reason for downloading and testing Windows 7 is t…
I was asked about the differences between classic ASP and ASP.NET, so let me put them down here, for reference: Let's make the introductions... Classic ASP was launched by Microsoft in 1998 and dynamically generate web pages upon user interact…
In this video I am going to show you how to back up and restore Office 365 mailboxes using CodeTwo Backup for Office 365. Learn more about the tool used in this video here: http://www.codetwo.com/backup-for-office-365/ (http://www.codetwo.com/ba…
Many functions in Excel can make decisions. The most simple of these is the IF function: it returns a value depending on whether a condition you describe is true or false. Once you get the hang of using the IF function, you will find it easier to us…

861 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question

Need Help in Real-Time?

Connect with top rated Experts

24 Experts available now in Live!

Get 1:1 Help Now