Toon posts:

[asp] directory aanmaken lukt voor enkel 2 niveaus

Pagina: 1
Acties:

Verwijderd

Topicstarter
Ik moet mappen aanmaken op mijn server (afhankelijk van bepaalde gegevens, doet er hier nu niet toe), als de map niet bestaat moet hij automatisch aangemaakt worden. Dit lukt, maar dan slechts voor 2 niveaus diep.

Set Dir = Server.CreateObject("ActiveFile.Directory")
lade = "\niveau1\niveau2"
Dir.path = lade
if not Dir.Exists then
Dir.Create lade
end if

dit lukt, maar

Set Dir = Server.CreateObject("ActiveFile.Directory")
lade = "\niveau1\niveau2\niveau3"
Dir.path = lade
if not Dir.Exists then
Dir.Create lade
end if

lukt niet. De mappen niveau 1 en 2 bestonden ook nog niet. Ik krijg foutmelding

ActiveFile (0x800A004C)
Path not found

Hoe komt dit?

  • whoami
  • Registratie: December 2000
  • Laatst online: 01:57
Je moet eens proberen om in DOS 2 directories aan te maken:

code:
1
md c:\niveau1\niveau2

zal ook niet lukken als de dir niveau1 nog niet bestaat.

https://fgheysels.github.io/


Verwijderd

Topicstarter
whoami schreef op 02 June 2003 @ 16:18:
Je moet eens proberen om in DOS 2 directories aan te maken:

code:
1
md c:\niveau1\niveau2

zal ook niet lukken als de dir niveau1 nog niet bestaat.
Maar ik kan niveau 1 en 2 aanmaken, ook als ze al niet bestaan.
die namen van niveau 1 & 2 die zijn nooit hetzelfde, die varieëren dus ik kan ze ook niet in dos gaan aanmaken

Verwijderd

Verwijderd schreef op 02 June 2003 @ 16:21:
[...]


Maar ik kan niveau 1 en 2 aanmaken, ook als ze al niet bestaan.
die namen van niveau 1 & 2 die zijn nooit hetzelfde, die varieëren dus ik kan ze ook niet in dos gaan aanmaken
wat ie bedoelt is:
Als er nog geen niveau 1 is aangemaakt kun je ook geen niveu 2 er onder hangen.
Je moet dus eerst niveau 1 maken, daarNA, 2 enz enz

  • robjanssen
  • Registratie: September 2001
  • Laatst online: 02-08 16:10

robjanssen

Software Developer

Try this:

code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
Set Dir = Server.CreateObject("ActiveFile.Directory")
lade = "\niveau1" 
Dir.path = lade
if not Dir.Exists then
Dir.Create lade
end if

Set Dir = Server.CreateObject("ActiveFile.Directory")
lade = "\niveau1\niveau2" 
Dir.path = lade
if not Dir.Exists then
Dir.Create lade
end if

dit lukt, maar 

Set Dir = Server.CreateObject("ActiveFile.Directory")
lade = "\niveau1\niveau2\niveau3" 
Dir.path = lade
if not Dir.Exists then
Dir.Create lade
end if

  • mulder
  • Registratie: Augustus 2001
  • Laatst online: 22-08 10:45

mulder

ik spuug op het trottoir

Liever dan een recursieve functie die van achter naar voren check of een dir hoger bestaat en zo niet aanmaakt.
Uut heufd, enigzins pseudo:
code:
1
2
3
4
5
6
7
8
9
Function MakeDir(sPath As String)
  If DirExists(sPath) Then Exit Function
  ParentPath = Left(sPath, InStrRev(sPath, "/")
  If Not DirExists(ParentPath ) Then
    MakeDir(ParentPath)
  Else
    MakeDir(sPath)
  End If
End Function

oogjes open, snaveltjes dicht

Pagina: 1