Edukiak
Indizea 🔎︎

# ScriptForge.FileSystem zerbitzua

FileSystem zerbitzuak fitxategiak eta karpetak maneiatzeko errutinak ditu. Ondoren, zerbitzu honek eskaintzen dituen zenbait eginbide erakusten dira:

- Fitxategi edo karpeta bat existitzen dela egiaztatzea.

- Karpetak eta fitxategiak sortzea eta ezabatzea.

- Fitxategiak irekitzeko/gordetzeko elkarrizketa-koadroak abiaraztea.

- Karpeta bateko fitxategien zerrenda atzitzea, etab.

FileSystem zerbitzuko metodoak XSimpleFileAccess UNO interfazean daude oinarrituta batez ere.

## Definizioak

Beheko taulak FileSystem zerbitzuan erabilitako metodo gehienen parametro nagusiak zerrendatzen ditu.

Parametroa | Deskribapena
FileName | Fitxategiaren izen osoa, bide-izena barne, amaieran bide-izenen bereizlerik gabe.
FolderName | Bide-izena duen karpetaren izen osoa. Bide-izenen amaierako bereizlea eduki dezake edo ez.
Name | Karpeta-izenaren edo fitxategi-izenaren azken osagaia, luzapena barne. Parametro hau sistema eragilearen jatorrizko formatua erabilita adierazten da beti.
BaseName | Karpeta-izenaren edo fitxategi-izenaren azken osagaia, luzapena kenduta.
NamePattern | Goiko izenetako edozein, azken osagaian komodinak sartuta. Onartutako komodinak honakoak dira: "?" ikurrak edozein karaktere bakun adierazten du "*" ikurrak zero, bat edo zenbait karaktere adierazten ditu

FileSystem zerbitzua erabilita, fitxategi anitzen gaineko eragiketak aldi berean gauzatzea ahalbidetzen du. Izen-ereduak erabilita, erabiltzaile-scriptek fitxategi anitz kopiatu, lekuz aldatu edo ezabatu ditzakete. Basic-en metodo integratuek, berriz, fitxategi bakarrak soilik maneiatu ditzakete.

### Fitxategi-izenen notazioa

Fitxategien eta karpeten izenak, bai argumentuetan bai itzulitako balioetan, adierazteko notazioa, FileSystem zerbitzuaren FileNaming propietateak definitutakoa da.

Laburbilduta, balizko irudikapen motak "URL" (URL fitxategi-notazioa), "SYS" (sistema eragilearen notazioa) eta "ANY" (lehenetsia) dira. Ikusi informazio gehiago behean.

URL notazioaren adibide bat file:///C:/Dokumentuak/nire_fitxategia.odt izan daiteke. Posible bada, erabili URL notazioa, aukera eramangarriagoa baita.

## Zerbitzuari deitzea

FileSystem zerbitzua erabiltzeko, ScriptForge liburutegia honakoa erabilita kargatu behar da:

            GlobalScope.BasicLibraries.LoadLibrary("ScriptForge")

Hurrengo kode-zatiak FileSystem zerbitzuari deitzen dio. BuildPath metodoa adibide modura erabili da.

          Dim FSO As Variant
          FSO = CreateScriptService("FileSystem")
          FSO.BuildPath(...)

Zerbitzu hau erabat onartuta dago bai Basic bai Python lengoaietan. Adibide guztiak Basic programazio-lengoaian eman dira, baina erraz bihurtu daitezke Python lengoaiara.

## Propietateak

Izena | Irakurtzeko soilik | Mota | Deskribapena
FileNaming | Ez | String | Fitxategien eta karpeten uneko notazioa, "ANY", "URL" edo "SYS", ezartzen edo itzultzen du: "ANY": (lehenetsia) FileSystem zerbitzuaren metodoek URLen zein uneko sistema eragilearen notazioa onartzen du sarrerako argumentuetan, baina beti URL kateak itzultzen ditu. "URL": FileSystem zerbitzuaren metodoek URL notazioa espero dute sarrerako argumentuetan, eta URL kateak itzultzen dituzte. "SYS": FileSystem zerbitzuaren metodoek uneko sistema eragilearen notazioa espero dute bai sarrerako argumentuetan bai itzulitako kateetan. Ezarri ondoren, FileNaming propietatea ez da aldatuko LibreOffice saioa amaitu arte edo berriro ezartzen den arte.
ConfigFolder | Bai | String | LibreOffice aplikazioaren konfigurazio-karpeta itzultzen du.
ExtensionsFolder | Bai | String | Hedapenak instalatuta dauden karpeta itzultzen du.
HomeFolder | Bai | String | Erabiltzailearen karpeta nagusia itzultzen du.
InstallFolder | Bai | String | LibreOffice aplikazioaren instalazio-karpeta itzultzen du.
TemplatesFolder | Bai | String | Sistemaren txantiloi-fitxategiak dituen karpeta itzultzen du.
TemporaryFolder | Bai | String | LibreOffice bide-izenen ezarpenetan aldi baterako fitxategietarako definitu den karpeta itzultzen du.
UserTemplatesFolder | Bai | String | Erabiltzaileak definitutako txantiloi-fitxategiak dituen karpeta itzultzen du.

FileSystem zerbitzuaren metodoen zerrenda
BuildPath CompareFiles CopyFile CopyFolder CreateFolder CreateTextFile DeleteFile DeleteFolder FileExists | Files FolderExists GetBaseName GetExtension GetFileLen GetFileModified GetName GetParentFolderName | GetTempName HashFile MoveFile MoveFolder OpenTextFile PickFile PickFolder SubFolders

## BuildPath

Karpeta baten bide-izena eta fitxategi baten izena elkartzen ditu eta fitxategi-izen osoa itzultzen du baliozko bereizle batekin. Bide-izenaren bereizlea beharrezkoa bada soilik gehituko da.

### Sintaxia:

            FSO.BuildPath(FolderName As String, Name As String) As String

### Parametroak:

FolderName: Name izenarekin konbinatuko den bide-izena. Zehaztutako bide-izenak ez du zertan lehendik dagoen karpeta bat izan behar.

Name: FolderName bide-izenari erantsiko zaion fitxategiaren izena. Parametro honek uneko sistema eragilearen notazioa darabil.

### Adibidea:

          Dim FSO : FSO = CreateScriptService("FileSystem")
          FSO.FileNaming = "URL"
          MsgBox FSO.BuildPath("file:///home/user", "sample file.odt")
          'file:///home/user/sample%20file.odt

## CompareFiles

Bi fitxategi konparatzen ditu eta True itzultzen du berdinak badirudite.

CompareContents argumentuaren balioa zein den, bi fitxategien arteko konparazioa fitxategi-atributuetan soilik (adibidez, azken aldatze-data) oinarrituko da edo fitxategi-edukietan oinarrituko da.

### Sintaxia:

              FSO.CompareFiles(FileName1 As String, FileName2 As String, [CompareContents As Boolean]) As Boolean

### Parametroak:

FileName1, FileName2: Konparatuko diren fitxategiak.

CompareContents: True bada, fitxategiaren edukiak konparatuko dira (balio lehentsia = False).

### Adibidea:

            FSO.FileNaming = "SYS"
            If FSO.CompareFiles("C:\myFile1.txt", "C:\myFile2.txt", CompareContents := False) Then
                ...
            End If

## CopyFile

Fitxategi bat edo batzuk kokaleku batetik beste batera kopiatzen ditu. True itzultzen du gutxienez fitxategi bat kopiatu bada, eta False errore bat gertatu bada.

Errore bat gertatuko da Source parametroak komodinak erabiltzen baditu eta ez badu bat egiten fitxategiren batekin.

Metodoa berehala geldituko da errore bat aurkitu ondoren. Metodoak ez ditu atzera botatzen edo desegiten errorea gertatu baino lehenagoko aldaketak.

### Sintaxia:

            FSO.CopyFile(Source As String, Destination As String, [Overwrite As Boolean]) As Boolean

### Parametroak:

Source: Kopiatuko d(ir)en fitxategi(a)k adierazten dituen FileName edo NamePattern b bat izan daiteke.

Destination: Izan daiteke bai FileName bat, Source fitxategi bakarra non kopiatuko den adierazita, edo FolderName bat, non Source fitxategi anitz kopiatuko diren.

- FolderName existitzen ez bada, sortu egingo da.

- Ez dira onartzen komodinak Destination katean.

Overwrite: True (egia, lehenetsia) bada, fitxategiak gainidatzi egin daitezke. Metodoak huts egingo du Destination irakurtzeko soilik bada, berdin dio Overwrite parametroak zer dioen.

### Adibidea:

            FSO.FileNaming = "SYS"
            ' Fitxategi bakar bat kopiatzen du
            FSO.CopyFile("C:\Documents\my_file.odt", "C:\Temp\copied_file.odt")
            ' Fitxategi anitz kopiatzen ditu. Fitxategiak soilik kopiatuko dira, ez azpikarpetak.
            FSO.CopyFile("C:\Documents\*.*", "C:\Temp\", Overwrite := False)

## CopyFolder

Karpeta bat edo gehiago kopiatzen du kokaleku batetik beste batera. True itzultzen du karpeta bat gutxienez kopiatu bada, eta False errore bat gertatu bada.

Source parametroak komodinak erabiltzen baditu eta ez badator bat karpetaren batekin, errore bat gertatuko da.

Metodoa berehala geldituko da errore bat aurkitu ondoren. Metodoak ez ditu errorea gertatu baino lehen izandako aldaketak desegingo.

### Sintaxia:

            FSO.CopyFolder(Source As String, Destination As String, [Overwrite As Boolean]) As Boolean

### Parametroak:

Source: Parametro hau kopiatuko diren karpetak adierazten dituen FolderName bat edo NamePattern bat izan daiteke.

Destination: Source parametroan zehaztutako karpeta(k) zein FolderName karpetan kopiatuko d(ir)en zehazten du.

- FolderName existitzen ez bada, sortu egingo da.

- Ez dira onartzen komodinak Destination parametroan.

Overwrite: True (egia, lehenetsia) bada, fitxategiak gainidatzi egin daitezke. Metodoak huts egingo du Destination irakurtzeko soilik bada, berdin dio Overwrite parametroak zer dioen.

### Adibidea:

            FSO.FileNaming = "SYS"
            FSO.CopyFolder("C:\Documents\*", "C:\Temp\", Overwrite := False)
            ' Karpetak, beren fitxategiak eta beren azpikarpetak kopiatuko dira

## CreateFolder

Zehaztutako FolderName sortzen du. True itzultzen du karpeta ongi sortu bada.

Zehaztutako karpetak lehendik ez dagoen karpeta guraso bat badu, sortu egingo da.

### Sintaxia:

            FSO.CreateFolder(FolderName As String) As Boolean

### Parametroak:

FolderName: Sortuko den karpeta ordezkatzen duen kate bat. Karpeta lehendik badago, salbuespen bat sortuko da.

### Adibidea:

            FSO.FileNaming = "SYS"
            FSO.CreateFolder("C:\NewFolder\")

## CreateTextFile

Zehaztutako fitxategia sortzen du eta fitxategian idazteko erabili daitekeen TextStream objektu bat itzultzen du.

Metodoak Null objektu bat itzuliko du errore bat gertatzen bada.

### Sintaxia:

            FSO.CreateTextFile(FileName As String, [Overwrite As Boolean], [Encoding As String]) As Object

### Parametroak:

FileName: Sortuko den fitxategiaren izena.

Overwrite: FileName gainidatzi daitekeen edo ez zehazten duen balio boolearra (balio lehenetsia = True).

Encoding: Erabiliko den karaktere-jokoa. Kodeketa lehenetsia "UTF-8" da.

### Adibidea:

            Dim myFile As Object
            FSO.FileNaming = "SYS"
            Set myFile = FSO.CreateTextFile("C:\Temp\ThisFile.txt", Overwrite := True)

Karaktere-jokoen izenei buruz gehiago jakiteko, begiratu IANAk karaktere-jokoei buruz duen orria. Kontuan izan LibreOffice aplikazioak ez dituela dauden karaktere-joko guztiak inplementatu.

## DeleteFile

Fitxategi bat edo batzuk ezabatzen ditu. True itzultzen du gutxienez fitxategi bat ezabatu bada, edo False errore bat gertatu bada.

Errore bat gertatuko da FileName parametroak komodinak erabiltzen baditu eta ez badu bat egiten fitxategiren batekin.

Ezabatuko diren fitxategiek ez dute irakurtzeko soilik izan behar.

Metodoa berehala geldituko da errore bat aurkitu ondoren. Metodoak ez ditu errorea gertatu baino lehen izandako aldaketak desegingo.

### Sintaxia:

            FSO.DeleteFile(FileName As String) As Boolean

### Parametroak:

FileName: Ezabatuko d(ir)en fitxategia(k) adierazten dituen FileName bat edo NamePattern bat izan daiteke.

### Adibidea:

            FSO.FileNaming = "SYS"
            FSO.DeleteFile("C:\Temp\*.docx")
            ' Fitxategiak soilik ezabatuko dira, azpikarpetak ez

## DeleteFolder

Karpeta bat edo batzuk ezabatzen ditu. True itzultzen du gutxienez karpeta bat ezabatu bada, eta False errore bat gertatu bada.

Errore bat gertatuko da FolderName parametroak komodinak erabiltzen baditu eta ez badu bat egiten karpetaren batekin.

Ezabatuko diren karpetek ez dute irakurtzeko soilik izan behar.

Metodoa berehala geldituko da errore bat aurkitu ondoren. Metodoak ez ditu errorea gertatu baino lehen izandako aldaketak desegingo.

### Sintaxia:

            FSO.DeleteFolder(FolderName As String) As Boolean

### Parametroak:

FolderName: Ezabatuko d(ir)en karpeta(k) adierazten dituen FolderName bat edo NamePattern bat izan daiteke.

### Adibidea:

            FSO.FileNaming = "SYS"
            FSO.DeleteFolder("C:\Temp\*")
            ' Karpetak soilik ezabatuko dira, goiko karpetako (C:\Temp\) fitxategiak ez dira ezabatuko

## FileExists

True itzultzen du emandako fitxategi-izen bat baliozkoa bada eta existitzen bada, bestela metodoak False itzultzen du.

FileName parametroa lehendik dagoen karpeta-izen bat bada, metodoak False itzuliko du.

### Sintaxia:

            FSO.FileExists(FileName As String) As Boolean

### Parametroak:

FileName: Probatuko den fitxategia adierazten duen kate bat.

### Adibidea:

            FSO.FileNaming = "SYS"
            If FSO.FileExists("C:\Documents\my_file.odt") Then
                '...
            End If

## Files

Zeron oinarritutako matrize bat itzultzen du emandako karpeta batean biltegiratutako fitxategi guztiekin. Matrizeko sarrera bakoitza bide-izen osoa eta fitxategi-izena duen kate bat da.

FolderName existitzen ez bada, salbuespen bat sortuko da.

Emaitza gisa sortutako zerrenda komodinen bidez iragazi daiteke.

### Sintaxia:

            FSO.Files(FolderName As String, [Filter As String]) As Variant

### Parametroak:

FolderName: Karpeta bat ordezkatzen duen kate bat. Karpetak lehendik egon behar du. FolderName parametroak ez du fitxategi bat adierazi behar.

Filter: Emaitza gisa lortutako fitxategi-zerrendari aplikatuko zaizkion komodinak ("?" eta "*") dituen kate bat (lehenetsia = "").

### Adibidea:

            Dim filesList As Variant, file As String
            FSO.FileNaming = "SYS"
            filesList = FSO.Files("/home/user/", "*.txt")
            For Each file In filesList
                ' ...
            Next file

## FolderExists

True itzultzen du zehaztutako FolderName baliozkoa bada eta existitzen bada, bestela metodoak False itzultzen du.

FolderName parametroa lehendik dagoen fitxategi-izen bat bada, metodoak False itzuliko du.

### Sintaxia:

            FSO.FolderExists(FolderName As String) As Boolean

### Parametroak:

FolderName: Probatuko den karpeta ordezkatzen duen kate bat.

### Adibidea:

            FSO.FolderNaming = "SYS"
            If FSO.FolderExists("C:\Documents\Thesis") Then
                '...
            End If

## GetBaseName

Karpeta- edo fitxategi-izen baten BaseName parametroa (azken osagaiaren berdina) itzultzen du, luzapenik gabe.

Metodoak ez du egiaztatzen zehaztutako fitxategia edo karpeta badagoen.

### Sintaxia:

            FSO.GetBaseName(FileName As String) As String

### Parametroak:

FileName: Fitxategi-izen bat eta bere bide-izena ordezkatzen dituen kate bat.

### Adibidea:

            ' Sarrerako parametroa karpeta bat bada, bide-izenaren azken osagaia itzultzen du
            MsgBox FSO.GetBaseName("/home/user/Documents") ' "Documents"
            ' Sarrerako parametroa fitxategi bat bada, metodoak luzapenik eta bide-izenik gabe itzultzen du fitxategi-izena
            MsgBox FSO.GetBaseName("/home/user/Documents/my_file.ods") ' "my_file"

## GetExtension

Fitxategi edo karpeta baten izenaren luzapena itzultzen du puntuaren "." karaktererik gabe.

Metodoak ez du egiaztatzen zehaztutako fitxategia edo karpeta badagoen.

Metodo hau karpeta-izen bati edo luzapenik gabeko fitxategi bati aplikatzen bazaio, kate huts bat itzuliko da.

### Sintaxia:

            FSO.GetExtension(FileName As String) As String

### Parametroak:

FileName: Fitxategi-izen bat eta bere bide-izena ordezkatzen dituen kate bat.

### Adibidea:

            FSO.FileNaming = "SYS"
            MsgBox FSO.GetExtension("C:\Windows\Notepad.exe")  ' "exe"

## GetFileLen

FileLen Basic funtzio integratuaren xedea fitxategi batek duen byte kopurua itzultzea da Long balio gisa, 2GB arte.

GetFileLen metodoak tamaina askoz handiagoko fitxategiak maneiatu ditzake, horretarako Currency balio bat itzultzen du.

### Sintaxia:

            FSO.GetFileLen(FileName As String) As Currency

### Parametroak:

FileName: Lehendik dagoen fitxategi bat ordezkatzen duen kate bat.

### Adibidea:

            Dim a As Currency
            FSO.FileNaming = "SYS"
            a = FSO.GetFileLen("C:\pagefile.sys")

## GetFileModified

Emandako fitxategi bat azken aldian aldatu den data itzultzen du.

### Sintaxia:

            FSO.GetFileModified(FileName As String) As Date

### Parametroak:

FileName: Lehendik dagoen fitxategi bat ordezkatzen duen kate bat.

### Adibidea:

            Dim a As Date
            FSO.FileNaming = "SYS"
            a = FSO.GetFileModified("C:\Documents\my_file.odt")

## GetName

Fitxategi edo karpeta-izen baten azken osagaia itzultzen du sistema eragilearen jatorrizko formatuan.

Metodo honek ez du egiaztatzen zehaztutako fitxategia edo karpeta badagoen ala ez.

### Sintaxia:

            FSO.GetName(FileName As String) As String

### Parametroak:

FileName: Fitxategi-izen bat eta bere bide-izena ordezkatzen dituen kate bat.

### Adibidea:

            Dim a As String
            FSO.FileNaming = "SYS"
            a = FSO.GetName("C:\Windows\Notepad.exe"  ' Notepad.exe

## GetParentFolderName

Zehaztutako fitxategi edo karpeta-izen baten karpeta gurasoaren izena duen kate bat itzultzen du.

Metodo honek ez du egiaztatzen zehaztutako fitxategia edo karpeta badagoen ala ez.

### Sintaxia:

            FSO.GetParentFolderName(FileName As String) As String

### Parametroak:

FileName: Analizatuko den fitxategi- edo karpeta-izena duen kate bat.

### Adibidea:

            Dim a As String
            FSO.FileNaming = "SYS"
            a = FSO.GetParentFolderName("C:\Windows\Notepad.exe"  ' C:\Windows\

## GetTempName

Ausaz sortutako aldi baterako fitxategi-izen bat itzultzen du, aldi baterako fitxategi bat behar duten eragiketak gauzatu ahal izateko.

Itzulitako fitxategi-izenak ez du atzizkirik. Itzulitako katean karpetari dagokion zatia sistemaren aldi baterako karpeta izango da.

Metodoak ez du aldi baterako fitxategia sortzen.

### Sintaxia:

            FSO.GetTempName() As String

### Adibidea:

            Dim a As String
            FSO.FolderNaming = "SYS"
            a = FSO.GetTempName() & ".txt"
            ' "/tmp/SF_574068.txt"

## HashFile

Hash funtzioak hainbat tokitan erabiltzen dira: zifratze-algoritmoetan, sinadura digitaletan, mezuak autentifikatzeko kodeetan, iruzurren detekzioan, hatz-marketan, kontroleko baturetan (mezuen osotasunaren egiaztatzeetan), hash tauletan, pasahitzen biltegietan eta beste hainbatetan.

HashFile metodoak hash funtzio baten emaitza itzultzen du, emandako fitxategi bati aplikatuta eta algoritmo jakin bat erabilita. Itzulitako balioa digitu hamaseitar minuskulez osatutako kate bat da.

Onartutako algoritmoak: MD5, SHA1, SHA224, SHA256, SHA384 eta SHA512.

### Sintaxia:

            FSO.HashFile(FileName As String, Algorithm As String) As String

### Parametroak:

FileName: Lehendik dagoen fitxategi bat ordezkatzen duen kate bat.

Algorithm: Onartutako algoritmoetako bat.

### Adibidea:

            FSO.FileNaming = "SYS"
            MsgBox FSO.HashFile("C:\pagefile.sys", "MD5")

## MoveFile

Fitxategi bat edo gehiago kokaleku batetik beste batera aldatzen du. True itzultzen du gutxienez fitxategi bat lekuz aldatu bada, edo False errore bat gertatu bada.

Errore bat gertatuko da, baita ere, Source parametroak komodinak erabiltzen baditu eta ez badator bat fitxategiren batekin.

Metodoa berehala geldituko da errore bat aurkitu ondoren. Metodoak ez ditu errorea gertatu baino lehen izandako aldaketak desegingo.

### Sintaxia:

            FSO.MoveFile(Source As String, Destination As String) As Boolean

### Parametroak:

Source: Lekuz aldatuko diren fitxategiak izendatzeko erabiliko den FileName bat edo NamePattern bat izan daiteke.

Destination: Source FileName bat bada, orduan parametro honek adierazten ditu lekuz aldatutako fitxategiaren bide-izen eta fitxategi-izen berriak.

Lekuz aldatzeko eragiketa fitxategi anitzekin egin bada, orduan Destination karpeta-izen bat izango da. Halakorik ez badago, sortu egingo da.

Source eta Destination karpeta guraso berean badaude, metodoak Source izenez aldatuko du.

Destination elementuan ez dira komodinak onartzen.

### Adibidea:

            Dim a As String
            FSO.FileNaming = "SYS"
            FSO.MoveFile("C:\Temp1\*.*", "C:\Temp2\")
            ' Fitxategiak soilik aldatuko dira lekuz, azpikarpetak ez

## MoveFolder

Karpeta bat edo batzuk kokaleku batetik beste batera aldatzen du. True itzultzen du karpeta bat gutxienez lekuz aldatu bada edo False errore bat gertatu bada.

Errorea gertatuko da Source parametroak komodinak erabiltzen baditu eta ez badu bat egiten karpetaren batekin.

Metodoa berehala geldituko da errore bat aurkitu ondoren. Metodoak ez ditu errorea gertatu baino lehen izandako aldaketak desegingo.

### Sintaxia:

            FSO.MoveFolder(Source As String, Destination As String) As Boolean

### Parametroak:

Source: FolderName bat edo NamePattern bat izan daiteke, lekuz aldatuko den karpeta bat edo batzuk izendatzeko.

Destination: Lekuz aldatzeko eragiketak karpeta bakarrean badu eragina, Destination lekuz aldatutako karpetaren izena eta bide-izena dira, eta ez dute lehendik existitu behar.

Karpeta anitz lekuz aldatuko badira, orduan Destination parametroak izendatzen du Source tokiko karpetak nora aldatuko diren. Destination helbururik ez badago, sortu egingo da.

Ez dira komodinak onartzen Destination parametroan.

### Adibidea:

            Dim a As String
            FSO.FileNaming = "SYS"
            FSO.MoveFolder("C:\Temp1\*", "C:\Temp2\")

## OpenTextFile

Fitxategi bat irekitzen du eta TextStream objektu bat itzultzen du. Objektu hori fitxategian irakurtzeko, idazteko edo eransteko erabili daiteke.

Kontuan izan metodoak ez duela egiaztatzen emandako fitxategia benetan testu-fitxategia den ala ez.

Metodoak Null objektua itzuliko du errore bat gertatzen bada.

### Sintaxia:

            FSO.OpenTextFile(FileName As String, [IOMode As Integer], [Create As Boolean], [Encoding As String]) As Object

### Parametroak:

FileName: Irekiko den fitxategia identifikatzen du.

IOMode: Sarrera/irteera modua adierazten du. Hiru konstanteetako bat izan daiteke: FSO.ForReading (lehenetsia), FSO.ForWriting edo FSO.ForAppending.

Create: Zehaztutako fitxategi-izena existitzen ez bada fitxategi berria sortu daitekeen ala ez adierazten duen balio boolearra.

- True bada, fitxategi bat eta bere karpeta gurasoak sortuko dira, lehendik ez badaude;

- False bada, fitxategi berriak ez dira sortuko (lehenetsia).

Encoding: Erabiliko den karaktere-jokoa. Kodeketa lehenetsia "UTF-8" da.

### Adibidea:

            Dim myFile As Object
            FSO.FileNaming = "SYS"
            Set myFile = FSO.OpenTextFile("C:\Temp\ThisFile.txt", FSO.ForReading)
            If Not IsNull(myFile) Then
                ' ...
            End If

## PickFile

Fitxategiak irekitzeko edo gordetzeko elkarrizketa-koadro bat irekitzen du.

SAVE modua ezarrita badago eta aukeratutako fitxategia lehendik badago, abisu-mezu bat bistaratuko da.

### Sintaxia:

          FSO.PickFile([DefaultFile As String], [Mode As String], [Filter As String]) As String

### Parametroak:

DefaultFile: Argumentu hau karpeta- eta fitxategi-izen batekin osatutako kate bat da:

- Karpetaren zatiak elkarrizketa-koadroa irekitzen denean erakutsiko den karpeta adierazten du (lehenetsia = hautatutako azken karpeta).

- Fitxategiaren zatiak ireki edo gordeko den fitxategi lehenetsia adierazten du.

Mode: OPEN (sarrerako fitxategia) edo SAVE (irteerako fitxategia). Balio lehenetsia OPEN da.

Filter: Elkarrizketa-koadroa irekitzen denean bistaratuko diren fitxategien luzapena (lehenetsia = iragazkirik ez).

### Adibidea:

            Dim a As Variant
            FSO.FileNaming = "SYS"
            a = FSO.PickFile("C:\", "OPEN", "txt")
            ' Bistaratuko diren fitxategiak *.txt soilik izango dira

## PickFolder

Elkarrizketa-koadro bat irekitzen du karpeta bat hautatzeko.

### Sintaxia:

            FSO.PickFolder([DefaultFolder As String], [FreeText As String]) As String

### Parametroak:

DefaultFolder: Elkarrizketa-koadroa irekitzen denean bistaratuko den karpetaren izena duen kate bat (lehenetsia = hautatutako azken karpeta).

FreeText: Elkarrizketa-koadroan bistaratuko den testua (lehenetsia = "").

### Adibidea:

            Dim a As Variant
            FSO.FileNaming = "SYS"
            a = FSO.PickFolder("C:\", "Aukeratu karpeta bat edo sakatu 'Utzi'")

## SubFolders

Zeron oinarritutako matrize bat itzultzen du emandako FolderName batean biltegiratutako karpetekin.

Zerrenda komodinekin iragazi daiteke.

### Sintaxia:

            FSO.SubFolders(FolderName As String, [Filter As String]) As Variant

### Parametroak:

FolderName: Karpeta bat ordezkatzen duen kate bat. Karpetak lehendik egon behar du. FolderName parametroak ez du fitxategi bat adierazi behar.

Filter: Emaitza gisa sortutako karpeta-zerrendari aplikatuko zaizkien komodinak ("?" eta "*") dituen kate bat (lehenetsia = "").

### Adibidea:

            Dim folderList As Variant, folder As String
            FSO.FileNaming = "SYS"
            folderList = FSO.SubFolders("/home/user/")
            For Each folder In folderList
                ' ...
            Next folder

Aurrizki gisa azpimarra bat ("_") duten ScriptForge Basic errutina edo identifikatzaile guztiak barneko erabilerarako erreserbatuta daude. Ez daude Basic makroetan erabiltzeko pentsatuta.

Erlazionatutako gaiak

ScriptForge.TextStream zerbitzua

Input funtzioa

Open instrukzioa