Visualizza la data e l'ora in cui un file è stato creato o modificato per l'ultima volta
TDF LibreOffice Document Liberation Project Blog comunitari Weblate Nextcloud Redmine Ask LibreOffice Donazione
Descrizione
La funzione FileDateTime(Testo come stringa)
accetta il percorso del file come stringa del parametro di input e restituisce i caratteri contenenti la data e l'ora della creazione o dell'ultima modifica di un file. Il risultato se non viene specificato alcun formato è: MM/DD/YYYY HH:MM:SS. Ad esempio MsgBox FileDateTime("/home/user1/Documents/foo.odt")
.
Questa funzione era infatti soggetta al bug tdf#63306 in alcune versioni intermedie di LibreOffice.
L'API di LibreOffice[1] consente di aggirare questo bug e offre anche altre potenti funzioni di accesso ai file.
L'esempio mostrato di seguito mostra come recuperare la data e l'ora di creazione o ultima modifica per un file tramite il metodo getDateTimeModified.[2]
Il metodo accetta un URL e restituisce una struttura chiamata DateTime[3]. La visualizzazione del risultato si ottiene mediante conversione tramite CDateFromUnoDateTime o tramite la funzione Format[4].
Codice
In LibreOffice Basic:
Option Explicit
Sub DateTimeInfo()
'''Visualizza data e ora dell'ultima modifica per un file specificato'''
Dim oSFA As Object
Dim oDateFile As New com.sun.star.util.DateTime
Dim sUrl As String
sUrl = "/home/user1/Documents/foo.odt"
oSFA = createUnoService("com.sun.star.ucb.SimpleFileAccess")
oDateFile = oSFA.getDateTimeModified(convertToURL(sUrl))
MsgBox CDateFromUnoDateTime(oDateFile),0, "DateTimeInfo()"
With oDateFile
MsgBox "Data e ora dell'ultima modifica delle informazioni da" & CHR$(10) & _
sURL & " :" & CHR$(10) & CHR$(10) & _
.year & format(.month, "-00-") & format(.day, "00") & " " & _
format(.hours, " \@\ 00") & format(.minutes, "\:00\:") & format(.seconds, "00") _
,0, "DateTimeInfo()"
End With
End Sub ' DateTimeInfo()
Esempio di file ODT per testare la macro
Note
- ↑ L'API di LibreOffice (Application Programming Interface) consente l'interazione con vari linguaggi di programmazione.
- ↑ Si veda /ref/interfacecom_1_1sun_1_1star_1_1ucb_1_1XSimpleFileAccess.html Documentazione API per l'interfaccia XSimpleFileAccess.
- ↑ Si veda la documentazione dell'API per la struttura DateTime
- ↑ Si veda la text/sbasic/shared/03120301.html?DbPAR=BASIC documentazione per la funzione Format