webForumDet fria alternativet

extractPath (tar ut enhet/sökväg/filnamn ur fullständig sökväg)

ASP

0 svar · 810 visningar · startad av Pace

Medlem sedan juni 20019 024 inlägg
Frågan#1

Script som tar ut enhet, sökväg eller filnamn ur en fullständig sökväg.

Kan diskuteras här

Om du har sökvägen C:\WINDOWS\SYSTEM\FIL.TXT
blir därmed resultatet följande:
enhet >> C:
sökväg >> C:\WINDOWS\SYSTEM
fil >> FIL.TXT

<font size="1" face="Verdana, Arial, Helvetica, sans-serif">Kod:<font size="1" face="Verdana, Arial, Helvetica, sans-serif" color="#006666">
<%
Response.Write "<PRE>"
Response.Write "Enhet: " & extractPath("c:\windows\system\fil.txt", 1) & vbCrLf
Response.Write "Sökväg: " & extractPath("c:\windows\system\fil.txt", 2) & vbCrLf
Response.Write "Fil: " & extractPath("c:\windows\system\fil.txt", 3) & vbCrLf

'*************************************************************************
'* Funktion för att ta ut enhet/sökväg/filnamn ur en fullständig sökväg.
'* Skriven av Peter Dahlgren aka Pace juli 2001
'*************************************************************************
FUNCTION ExtractPath (FullPath, extractMode)

    'Avsluta om felaktig.
    IF FullPath = "" THEN
   ExtractPath = ""
   EXIT FUNCTION
End If

   
    'Leta upp vilken pos det sista \\-tecknet har och ta ut filen.
    FOR CurrPos = 1 TO LEN(FullPath)
       IF INSTR(MID(FullPath, CurrPos, 1), "\\") = 1 THEN SlashPos = CurrPos
    NEXT

    'Ta ut enhet, om den finns definerad.
    IF MID(FullPath, 2, 2) = ":\\" THEN strDrive = LEFT(FullPath, 2)

    'Ta ut fil och sökväg om sökvägen finns definerad.
    IF INSTR(FullPath, "\\") THEN
       strFile = MID(FullPath, SlashPos + 1)
       strPath = MID(FullPath, 1, LEN(FullPath) - LEN(strFile) - 1)
    ELSE
       strFile = FullPath
       strPath = ""
    END IF

    IF extractMode = 1 THEN
       ExtractPath = strDrive
    ELSEIF extractMode = 2 THEN
       ExtractPath = strPath
    ELSEIF extractMode = 3 THEN
       ExtractPath = strFile
    ELSE
       ExtractPath = ""
    END IF

END FUNCTION

%>

------------------
Peter D

[Redigerat av Pace den 20 jul 2001]

257 ms totalt · 4 externa anrop · v20260731065814-full.86ec41c2
125 ms — deklarationer (db)
0 ms — hämta statistik (cache)
126 ms — hämta tråd, inlägg och bilagor (db)
128 ms — ändringar (db)