Visual Basicissa ei ole valmiina FileExists-funktiota, tai ainakaan itse en sellaista ole löytänyt. Kyse on siis funktiosta, joka kertoo, onko tietyn nimistä tiedostoa levyllä vai ei. Toteuttaminen kuitenkin onnistuu melko helposti, ja seuraavassa on paras tietämäni tapa. Funktiolle annetaan parametriksi tiedoston nimi (hakemistopolun kanssa) ja se palauttaa True, jos tiedosto on olemassa.
Function FileExists(nimi As String) As Boolean If Dir(nimi) = "" Then FileExists = False Else FileExists = True End If End Function
Toinen vaihtoehto on FileSystemObject.
Function FileExists(nimi As String) As Boolean Dim fso As New Scripting.FileSystemObject FileExists = fso.FileExists(nimi) End Function
Niimpä niin onkohan se olemassa...
Jee, tää on koodien koodi :) Olettek muuten huomannu, että aina ku joku lisää jonkun koodin ni sitte muut pistää kommenttejä, että olis tuon voinu tehdä monella muullakin tavalla ja plaa plaa.. siis lopettakaa ruinaaminen
Mul tos ei tuu yhtää virheitäkää mut ei tapahdu mitää. Pitäiskö se jotenki määriellä, että mitä tapahtuu jos vaik joku tiedosto löytyy?
niinku käytät sitä näin:
FileExists(tiedosto.exe) :o tietääkseni?
Öh.. eikö tuo onnistuisi FSO:lla helpommin?
If fso.FileExists("C:\filu.txt") = True Then...
...End if
Tuotahan voi käyttää näin:
If Not FileExists(App.Path & "tiedosto.txt") Then Msgbox "Tiedostoa " & App.Path & "tiedosto.txt ei löytynyt"
siis... mikä fso?
Jeppejl kirjoitti:
Öh.. eikö tuo onnistuisi FSO:lla helpommin?
If fso.FileExists("C:\filu.txt") = True Then...
...End if
Saattaa olla...
miten tota functionii voi sit käyttää? Et esim. tallettaa true tai falsen johonkin muuttujaan?
^ Keksisin jo, ei tarvii vastata. Aivan mahtava koodi toi! Oon ettiny tota vaikka kuinka kauan.
Aihe on jo aika vanha, joten et voi enää vastata siihen.