Visualizzazione dei risultati da 1 a 5 su 5
  1. #1

    VB6 codifica UTF-8

    Ciao a tutti,
    ho un problema con la "codifica" dei file, cerco di spiegarmi:
    tramite l'istruzione
    Set objTextFile = myFSO.CreateTextFile(NomeDelFile, True) creo un file di testo (in realtà è un file XML) che però non riesco a codificare come UTF-8 o Unicode, nonostante abbia specificato il secondo parametro a True (per la creazione di file in formato Unicode).

    Qualcuno ha qualche suggerimento da darmi?

    Grazie mille a tutti quelli che ci proveranno!

  2. #2
    Moderatore di Programmazione L'avatar di alka
    Registrato dal
    Oct 2001
    residenza
    Reggio Emilia
    Messaggi
    24,472
    Trattandosi di file XML, forse potresti usare direttamente il parser MSXML per leggere e trattare correttamente i file.

    Ciao!
    MARCO BREVEGLIERI
    Software and Web Developer, Teacher and Consultant

    Home | Blog | Delphi Podcast | Twitch | Altro...

  3. #3
    Interessante, potrebbe essere un approccio diverso alla cosa, hai qualche link o esempio da propormi?

    Io intanto cerco su google.

    Grazie mille comunque!

  4. #4
    Ragazzi scusate se insisto, ma il problema sta diventando davvero "imbarazzante"...
    Allora per non cambiare troppe cose nella dll che (purtroppo) è in piedi già da diverso tempo, ho trovato una cosa un po' più semplice:
    se apro il mio file xml in formato unicode con un semplicissimo editor di testo, quale ad esempio NotePad e salvo il mio file con il formato UTF8 tutto gira senza problemi.

    Ora mi chiedo e vi chiedo:
    esiste qualche metodo in VB6 per "editare" il file con il notepad e sfruttare le sue "potenzialità" per salvare il file stesso con formato UTF8?

    Grazie a tutti.

  5. #5
    Ho risolto,
    per tutti quelli a cui interessasse come creare un file in formato UTF8 posto qui sotto il codice:

    Const adTypeBinary = 1
    Const adSaveCreateOverwrite = 2
    Const adModeReadWrite = 3

    Dim objStream
    Set objStream = CreateObject("ADODB.Stream")
    objStream.Charset = "UTF-8"
    objStream.open
    objStream.WriteText ("Insert your text here!")

    objStream.SaveToFile FileName, adSaveCreateOverwrite
    objStream.Close
    Set objStream = Nothing

    buon VB6 a tutti!

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.