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.

Karpeten eta fitxategi-izenen bide-izena adierazteko, ez da onartzen "~" (tileta) karakterea lasterbide modura, nahiz eta Linuxen oinarritutako sistemetan erabilia izan. "~/Dokumentuak/nire_fitxategia.odt" modukoak erabili ordez, erabili bide-izen osoa: "/home/user/Dokumentuak/nire_fitxategia.odt".

## Zerbitzuari deitzea

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

##### Basic lengoaian

          GlobalScope.BasicLibraries.LoadLibrary("ScriptForge")
          Dim FSO As Object
          Set FSO = CreateScriptService("FileSystem")
          FSO.BuildPath(...)

##### Python lengoaian

          from scriptforge import CreateScriptService
          fso = CreateScriptService("FileSystem")
          fso.BuildPath(...)

## 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:

svc.BuildPath(foldername: str, name: str): str

### 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:

##### Basic lengoaian

          Dim FSO as Object
          Set FSO = CreateScriptService("FileSystem")
          Dim aFileName as String
          FSO.FileNaming = "URL"
          aFileName = FSO.BuildPath("file:///home/user", "sample file.odt")
          ' file:///home/user/sample%20file.odt

##### Python lengoaian

          fso = CreateScriptService("FileSystem")
          fso.FileNaming = "URL"
          aFileName = 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:

svc.CompareFiles(filename1: str, filename2: str, comparecontents: bool = False): bool

### Parametroak:

filename1, filename2: Konparatuko diren fitxategiak.

comparecontents: True bada, fitxategiaren edukiak konparatuko dira (balio lehenetsia = False).

### Adibidea:

##### Basic lengoaian

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

##### Python lengoaian

          fso.FileNaming = "SYS"
          if fso.CompareFiles(r"C:\myFile1.txt", r"C:\myFile2.txt", comparecontents = False):
              # ...

## 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, baita ere, source parametroak komodinak erabiltzen baditu eta ez badator bat fitxategiren batekin.

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

### Sintaxia:

svc.CopyFile(source: str, destination: str, overwrite: bool = True): bool

### Parametroak:

source: Kopiatuko d(ir)en fitxategi(a)k adierazten dituen FileName edo NamePattern 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.

- destination existitzen ez bada, sortu egingo da.

- Ez dira komodinak onartzen 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:

Beheko adibidean, lehen lerroak fitxategi bat kopiatzen du eta bigarren lerroak fitxategi anitz kopiatzen ditu komodinak erabilita.

##### Basic lengoaian

          FSO.CopyFile("C:\Documents\my_file.odt", "C:\Temp\copied_file.odt")
          FSO.CopyFile("C:\Documents\*.*", "C:\Temp\", Overwrite := False)

##### Python lengoaian

          fso.CopyFile(r"C:\Documents\my_file.odt", r"C:\Temp\copied_file.odt")
          fso.CopyFile(r"C:\Documents\*.*", r"C:\Temp", overwrite = False)

Kontuan izan azpikarpetak eta haien edukiak ez direla kopiatzen komodinak source argumentuan erabiltzen direnean.

## 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.

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:

svc.CopyFolder(source: str, destination: str, overwrite: bool = True): bool

### 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.

- destination existitzen ez bada, sortu egingo da.

- Ez dira komodinak onartzen 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:

Beheko adibidean, fitxategi, karpeta eta azpikarpeta guztiak kopiatuko dira.

          ' Basic
          FSO.CopyFolder("C:\Documents\*", "C:\Temp\", Overwrite := False)

          # Python
          fso.CopyFolder(r"C:\Documents\*", r"C:\Temp", overwrite = False)

## 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:

svc.CreateFolder(foldername: str): bool

### Parametroak:

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

### Adibidea:

          ' Basic
          FSO.CreateFolder("C:\NewFolder")

          # Python
          fso.CreateFolder(r"C:\NewFolder")

## CreateTextFile

Zehaztutako fitxategia sortzen du eta fitxategian idazteko erabili daitekeen TextStream zerbitzu-instantzia bat itzultzen du.

Metodoak Null objektu bat itzuliko du errore bat gertatzen bada.

### Sintaxia:

svc.CreateTextFile(filename: str, overwrite: bool = True, encoding: str = 'UTF-8'): svc

### 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:

##### Basic lengoaian

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

##### Python lengoaian

          fso.FileNaming = "SYS"
          myFile = fso.CreateTextFile(r"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:

svc.DeleteFile(filename: str): bool

### Parametroak:

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

### Adibidea:

Beheko adibidean, fitxategiak soilik ezabatuko dira, azpikarpetak ez dira ezabatuko.

          ' Basic
          FSO.DeleteFile("C:\Temp\*.docx")

          # Python
          fso.DeleteFile(r"C:\Temp\*.docx")

## 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:

svc.DeleteFolder(foldername: str): bool

### Parametroak:

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

### Adibidea:

Beheko adibideetan, karpetak eta haien edukiak soilik ezabatuko dira. "C:\Temp" karpeta gurasoko fitxategiak ez dira ezabatuko.

          ' Basic
          FSO.DeleteFolder("C:\Temp\*")

          # Python
          fso.DeleteFolder(r"C:\Temp\*")

## 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:

svc.FileExists(filename: str): bool

### Parametroak:

filename: Probatuko den fitxategia adierazten duen kate bat.

### Adibidea:

##### Basic lengoaian

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

##### Python lengoaian

          fso.FileNaming = "SYS"
          if fso.FileExists(r"C:\Documents\my_file.odt"):
              # ...

## 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 argumentuak lehendik ez dagoen karpeta bat zehazten badu, salbuespen bat sortuko da.

Emaitza gisa sortutako zerrenda komodinen bidez iragazi daiteke.

### Sintaxia:

svc.Files(foldername: str, filter: str = ''): str[0..*]

### Parametroak:

foldername: Karpeta bat ordezkatzen duen kate bat. Karpetak lehendik egon behar du. Argumentu honek ez du fitxategi bat adierazi behar.

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

### Adibidea:

##### Basic lengoaian

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

##### Python lengoaian

          fso.FileNaming = "SYS"
          filesList = fso.Files("/home/user/", "*.txt")
          for file in fileList:
              # ...

## 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:

svc.FolderExists(foldername: str): bool

### Parametroak:

foldername: Probatuko den karpeta ordezkatzen duen kate bat.

### Adibidea:

##### Basic lengoaian

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

##### Python lengoaian

          fso.FileNaming = "SYS"
          if fso.FolderExists(r"C:\Documents\Thesis")
              # ...

## 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:

svc.GetBaseName(filename: str): str

### Parametroak:

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

### Adibidea:

Beheko adibideetan, GetBaseName metodo-deia karpeta batena da, eta beraz, funtzioak bide-izenaren azken osagaia itzuliko du. Bigarren deiak fitxategi-izen bat jasotzen du, beraz fitxategiaren izena luzapenik gabe itzuliko da.

##### Basic lengoaian

          MsgBox FSO.GetBaseName("/home/user/Documents") ' "Documents"
          MsgBox FSO.GetBaseName("/home/user/Documents/my_file.ods") ' "my_file"

##### Python lengoaian

          bas = CreateScriptService("Basic")
          bas.MsgBox(fso.GetBaseName("/home/user/Documents")) # "Documents"
          bas.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:

svc.GetExtension(filename: str): str

### Parametroak:

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

### Adibidea:

          ' Basic
          ext = FSO.GetExtension("C:\Windows\Notepad.exe")  ' "exe"

          # Python
          ext = fso.GetExtension(r"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:

svc.GetFileLen(filename: str): num

### Parametroak:

filename: Lehendik dagoen fitxategi bat ordezkatzen duen kate bat.

### Adibidea:

##### Basic lengoaian

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

##### Python lengoaian

          fso.FileNaming = "SYS"
          fLen = fso.GetFileLen(r"C:\pagefile.sys")

## GetFileModified

Emandako fitxategi bat azken aldian aldatu den data itzultzen du.

### Sintaxia:

svc.GetFileModified(filename: str): datetime

### Parametroak:

filename: Lehendik dagoen fitxategi bat ordezkatzen duen kate bat.

### Adibidea:

##### Basic lengoaian

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

##### Python lengoaian

          fso.FileNaming = "SYS"
          aDate = FSO.GetFileModified(r"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:

svc.GetName(filename: str): str

### Parametroak:

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

### Adibidea:

          ' Basic
          a = FSO.GetName("C:\Windows\Notepad.exe")  ' Notepad.exe

          # Python
          a = fso.GetName(r"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:

svc.GetParentFolderName(filename: str): str

### Parametroak:

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

### Adibidea:

          ' Basic
          a = FSO.GetParentFolderName("C:\Windows\Notepad.exe")  ' C:\Windows\

          # Python
          a = fso.GetParentFolderName(r"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:

svc.GetTempName(): str

### Adibidea:

##### Basic lengoaian

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

##### Python lengoaian

          fso.FileNaming = "SYS"
          fName = 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:

svc.HashFile(filename: str, algorithm: str): str

### Parametroak:

filename: Lehendik dagoen fitxategi bat ordezkatzen duen kate bat.

algorithm: Onartutako algoritmoetako bat.

### Adibidea:

          ' Basic
          sHash = FSO.HashFile("C:\pagefile.sys", "MD5")

          # Python
          sHash = FSO.HashFile(r"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:

svc.MoveFile(source: str, destination: str): bool

### 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.

Ez dira komodinak onartzen destination parametroan.

### Adibidea:

Hurrengo adibideetan, fitxategiak soilik aldatuko dira lekuz, azpikarpetak ez.

          ' Basic
          FSO.MoveFile("C:\Temp1\*.*", "C:\Temp2")

          # Python
          fso.MoveFile(r"C:\Temp1\*.*", r"C:\Temp2")

## 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:

svc.MoveFolder(source: str, destination: str): bool

### 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 iturburuko karpetak nora aldatuko diren. destination helbururik ez badago, sortu egingo da.

Ez dira komodinak onartzen destination parametroan.

### Adibidea:

          ' Basic
          FSO.MoveFolder("C:\Temp1\*", "C:\Temp2")

          # Python
          fso.MoveFolder(r"C:\Temp1\*", r"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 (Basic lengoaian) edo None (Python lengoaian) itzuliko du errore bat gertatzen bada.

### Sintaxia:

svc.OpenTextFile(filename: str, iomode: int = 1, create: bool = False, encoding: str = 'UTF-8'): svc

### Parametroak:

filename: Irekiko den fitxategia identifikatzen du.

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

create: Zehaztutako filename 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:

##### Basic lengoaian

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

##### Python lengoaian

          fso.FileNaming = "SYS"
          myFile = fso.OpenTextFile(r"C:\Temp\ThisFile.txt", fso.ForReading)
          if myFile is not None:
              # ...

## 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:

svc.PickFile(defaultfile: str ='', mode: str = 'OPEN', filter: str = ''): str

### 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: Kate-balio bat, "OPEN" (sarrera-fitxategietarako) edo "SAVE" (irteera-fitxategietarako) izan daitekeena. Balio lehenetsia "OPEN" da.

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

### Adibidea:

Beheko adibideetan, "txt" iragazkia aplikatuta duen fitxategi-aukeratzaile bat irekitzen da.

          ' Basic
          aFile = FSO.PickFile("C:\Documents", "OPEN", "txt")

          # Python
          aFile = fso.PickFile(r"C:\Documents", "OPEN", "txt")

## PickFolder

Elkarrizketa-koadro bat irekitzen du karpeta bat hautatzeko.

### Sintaxia:

svc.PickFolder(defaultfolder: str = '', freetext: str = ''): str

### 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:

          ' Basic
          aFolder = FSO.PickFolder("C:\Documents", "Aukeratu karpeta bat edo sakatu 'Utzi'")

          # Python
          aFolder = fso.PickFolder("C:\Documents", "Aukeratu karpeta bat edo sakatu 'Utzi'")

## SubFolders

Zeron oinarritutako matrize bat, katez osatutakoa, itzultzen du emandako foldername batean biltegiratutako karpetekin.

Zerrenda komodinekin iragazi daiteke.

### Sintaxia:

svc.SubFolders(foldername: str, filter: str = ''): str[0..*]

### 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:

##### Basic lengoaian

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

##### Python lengoaian

          fso.FileNaming = "SYS"
          folderList = fso.SubFolders("/home/user/")
          for folder in folderList:
              # ...

Azpimarraren karaktere bat, "_", aurrizki gisa duten ScriptForge Basic errutina edo identifikatzaile guztiak barneko erabilerarako erreserbatuta daude. Ez dira Basic makroetan edo Python scriptetan erabili behar.

Erlazionatutako gaiak

ScriptForge.TextStream zerbitzua

Input funtzioa [VBA]

Open instrukzioa