Buongiorno a tutti,
è la prima volta che posto su questa lista.

Ho l'esigenza di convertire dei file da vari formati di testo ad UTF-8.

Ho fatto delle prove con openoffice e sembra che la cosa funzioni egregiamente.

Poichè i file da convertire sono molti, sto cercando di costrure una macro da richiamare senza aprire OO.

Il buon Paolo Mantovani, mi ha fornito il seguente codice che funziona abbastanza bene.

Sub ConvertToUTF8(sSourceFile As String, sDestFile As String,Optional 
bOverwrite As Boolean )
Dim sSourceUrl As String
Dim sDestUrl As String
Dim bLocOverwrite As Boolean
Dim oDocument As Object
Dim mProps(2) As New com.sun.star.beans.PropertyValue

        sSourceUrl = ConvertToUrl(sSourceFile)
        sDestUrl = ConvertToUrl(sDestFile)
        
        If Not IsMissing(bOverwrite) Then
                bLocOverwrite = bOverwrite
        Else
                bLocOverwrite = False
        End If
        
        mProps(0).Name = "Hidden"
        mProps(0).Value = True
        mProps(1).Name = "FilterName"
        mProps(1).Value = "Text (encoded)"
        mProps(2).Name = "FilterOptions"
        mProps(2).Value = "UTF8"
                
        oDocument = StarDesktop.LoadComponentFromUrl(sSourceUrl, "_default", 0, 
mProps())

        mProps(0).Name = "Overwrite"
        mProps(0).Value = bLocOverwrite
        mProps(1).Name = "FilterName"
        mProps(1).Value = "Text (encoded)"
        mProps(2).Name = "FilterOptions"
        mProps(2).Value = "UTF8"

        oDocument.storeAsUrl(sDestUrl, mProps())
        
        oDocument.close(True)
                
End Sub


Ma se la chiamo dall'esterno con il comando :
soffice "macro:///Standard.Module1.ConvertToUTF8(/home/questadir/file_da_convertire.txt,/home/questadir/fileconvertito.txt)"



La cosa non funziona come dovrebbe.

Inoltre, accade una cosa strana:
Quando converto un file, nel nuovo file mi viene aggiunto all'inizio del testo uno strano carattere, che sotto linux con l'editor vi viene visualizzato così:
<feff>


Come mai? E' un baco di OO ? è possibile toglierlo durante la conversione?



Premesso che non sono un esperto di questo linguaggio, volevo sapere se qualcuno mi può aiutare a perfezionare questa macro.

--
Cordialmente.

Carmelo Carchedi
Juniorbit Sas www.juniorbit.it
via Bramantino 9 - 20155 Milano
Fax:0270033713


--------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]



Rispondere a