For Programmers: Free Programming Magazines  


Home > Archive > ASP > January 2006 > How do I check for the existence of a file?









You are viewing an archived Text-only version of the thread. To view this thread in it's original format and/or if you want to reply to this thread please [click here]

 

Author How do I check for the existence of a file?
www.MessageMazes.com

2006-01-30, 6:55 pm

Greetings,

I'm experimenting with an ASP page that reads data from a file name
that is passed to it as a parameter, as in this page, which works,
because the "good" file exists.

http://mazes.com/asp-maze/customize...d&firstname=jwk
(make "your name is an amazing asp.general programmer" mazes.

But when I try this page, with the "bad" file which does not exist, I'm
not succeeding:
http://mazes.com/asp-maze/customize...d&firstname=jwk

I've tried several solutions that I found by googling.

When I tried:
If (ns.FileExists(zfil)<>true) then ...

but even when I give it a valid name, it returns "False"

I've tried using
On Error Resume Next
set nq=ns.OpenTextFile(Server.MapPath(zfil),1,true)
if Err.Number <> 0 Then ...
On Error Goto 0

I have found a workaround. Here is what finally worked:

On Error Resume Next
set nq=ns.OpenTextFile(Server.MapPath(zfil),1,true)
if nq.AtEndOfStream=True Then
zfil=custompath&"customdatadefault.asp"
set nq=ns.OpenTextFile(Server.MapPath(zfil),1,true)
end if

But meanwhile, I'd love to hear how to check for the existence of a
file.

John

Bob Barrows [MVP]

2006-01-30, 6:55 pm

You've got the key. You used MapPath to open the file. Why didn't you use it
to check for the file's existence?

If not ns.FileExists(server.mappath(zfil)) then

www.MessageMazes.com wrote:
> Greetings,
>
> I'm experimenting with an ASP page that reads data from a file name
> that is passed to it as a parameter, as in this page, which works,
> because the "good" file exists.
>
> http://mazes.com/asp-maze/customize...d&firstname=jwk
> (make "your name is an amazing asp.general programmer" mazes.
>
> But when I try this page, with the "bad" file which does not exist,
> I'm not succeeding:
> http://mazes.com/asp-maze/customize...d&firstname=jwk
>
> I've tried several solutions that I found by googling.
>
> When I tried:
> If (ns.FileExists(zfil)<>true) then ...
>
> but even when I give it a valid name, it returns "False"
>
> I've tried using
> On Error Resume Next
> set nq=ns.OpenTextFile(Server.MapPath(zfil),1,true)
> if Err.Number <> 0 Then ...
> On Error Goto 0
>
> I have found a workaround. Here is what finally worked:
>
> On Error Resume Next
> set nq=ns.OpenTextFile(Server.MapPath(zfil),1,true)
> if nq.AtEndOfStream=True Then
> zfil=custompath&"customdatadefault.asp"
> set nq=ns.OpenTextFile(Server.MapPath(zfil),1,true)
> end if
>
> But meanwhile, I'd love to hear how to check for the existence of a
> file.
>
> John


--
Microsoft MVP -- ASP/ASP.NET
Please reply to the newsgroup. The email account listed in my From
header is my spam trap, so I don't check it very often. You will get a
quicker response by posting to the newsgroup.


www.MessageMazes.com

2006-01-30, 6:55 pm

Thanks, I'll try that.

Just did. It worked, even though I thought it didn't for a second. Had
to read the results twice.

Meanwhile, I figured out why the statement didn't generate an error. I
had:

set nq=ns.OpenTextFile(Server.MapPath(zfil),1,true)

It should have been

set nq=ns.OpenTextFile(Server.MapPath(zfil),1,false)

I had told it to create the file if it didn't already exist, so of
course, it didn't generate an error. Now it does.

Thanks for all the help. This group is wonderful.

John

Sponsored Links







Also available: Server administration forum archive | Web Design forum archive | Software forum archive | Hardware reviews archive

Copyright 2008 codecomments.com