Snitz Forums 2000
Snitz Forums 2000
Home | Profile | Register | Active Topics | Members | Search | FAQ
 All Forums
 Community Forums
 Code Support: ASP (Non-Forum Related)
 FileSystemObject and Apostrophes

Note: You must be registered in order to post a reply.
To register, click here. Registration is FREE!
Before posting, make sure you have read this topic!

Screensize:
UserName:
Password:
Format Mode:
Format: BoldItalicizedUnderlineStrikethrough Align LeftCenteredAlign Right Horizontal Rule Insert HyperlinkInsert EmailInsert Image Insert CodeInsert QuoteInsert List
   
Message:

* HTML is OFF
* Forum Code is ON
Smilies
Smile [:)] Big Smile [:D] Cool [8D] Blush [:I]
Tongue [:P] Evil [):] Wink [;)] Clown [:o)]
Black Eye [B)] Eight Ball [8] Frown [:(] Shy [8)]
Shocked [:0] Angry [:(!] Dead [xx(] Sleepy [|)]
Kisses [:X] Approve [^] Disapprove [V] Question [?]

 
   

T O P I C    R E V I E W
Carefree Posted - 10 July 2013 : 12:11:35
I want to check for the existence of files using FSO, but if the file path and/or name include an apostrophe, the program breaks. Anyone have a suggestion?

Example code:

Set objFSO = Server.CreateObject("Scripting.FileSystemObject")
If not objFSO.FileExists(strPath&strFile) Then
	strErr=strErr & "<li>"&strFile&" does not exist.</li>"
Else
	objFSO.Close
End If
Set objFSO = Nothing
9   L A T E S T    R E P L I E S    (Newest First)
Carefree Posted - 11 August 2015 : 16:22:13
This is very old, but here's an update. I solved the mouseover Javascript routine by replacing apostrophes with the U+2032 symbol (#8242;). They still look like apostrophes (and actually sort properly now whereas the apostrophe didn't), so now the Javascript is happy.
Carefree Posted - 11 July 2013 : 20:04:38
Found it - wasn't in this routine but in the chkstring function; was resulting in a double apostrophe before checking the file name. Thanks. Now if only I could figure out that javascript mouse-over routine, I'd be through with this and I could rest.
HuwR Posted - 11 July 2013 : 13:34:15
this is the code I ran, and it quite happily displays that the file exists

<%
strPath = "c:\temp\"
strFile = "apostroph'e&ampersand.txt"
Set objFSO = Server.CreateObject("Scripting.FileSystemObject")
If not objFSO.FileExists(strPath&strFile) Then
	strErr=strErr & "<li>"&strFile&" does not exist.</li>"
Else
	strErr=strErr & "<li>"&strFile&" exists.</li>"
End If
Set objFSO = Nothing
Response.Write strErr
%>

results in
  • apostroph'e&ampersand.txt exists.


FYI, your code errors on the line objFSO.Close
HuwR Posted - 11 July 2013 : 13:30:59
what are you actually getting when you run your code, I just tried this myself and it works quite happily with ampersand and apostrophes in file names
Carefree Posted - 11 July 2013 : 11:50:13
The code works perfectly on all folders/files except for those containing an apostrophe and/or an ampersand.
HuwR Posted - 11 July 2013 : 10:45:19
quote:
From the Script Guy's Blog
Incidentally, if you’re using the FileSystemObject (another way to work with files and folders), you don’t have to worry about this; the apostrophe doesn’t seem to bother the FileSystemObject. For example, if you want to know the size of Ken Myer’s Folder, use this code:

Set objFSO = CreateObject("Scripting.FileSystemObject")
Set objFolder = objFSO.GetFolder("C:\Ken Myer’s Folder")
Wscript.Echo "Size: " & objFolder.Size
No escaping or other coding tricks required.


HuwR Posted - 11 July 2013 : 10:41:09
well, from what I can find out, the FSO should not have any problem with filenames containing an apostrophe, are you sure that is definitely what is causing the problem ?
Carefree Posted - 11 July 2013 : 09:18:36
Replacing with an \' or with an '' doesn't work. Any other suggestions?
HuwR Posted - 10 July 2013 : 12:19:25
try escaping any apostrophes with a slash, so try a replace on strFile to replace ' with \'

Snitz Forums 2000 © 2000-2021 Snitz™ Communications Go To Top Of Page
This page was generated in 0.03 seconds. Powered By: Snitz Forums 2000 Version 3.4.07