Conversione caratteri accentati in c

Area di discussione libera.

Moderatore: Staff

Regole del forum
1) Rispettare le idee altrui.
2) Evitare le offese dirette.
3) Leggere attentamente le risposte ricevute
4) Scrivere i messaggi con il colore di default, evitare altri colori.
5) Scrivere in Italiano o in Inglese, se possibile grammaticalmente corretto, evitate stili di scrittura poco chiari, quindi nessuna abbreviazione tipo telegramma o scrittura stile SMS o CHAT.
6) Appena registrati è consigliato presentarsi nel forum dedicato.

La non osservanza delle regole porta a provvedimenti di vari tipo da parte dello staff, in particolare la non osservanza della regola 5 porta alla cancellazione del post e alla segnalazione dell'utente. In caso di recidività l'utente rischia il ban temporaneo.
Rispondi
Avatar utente
whites11
Linux 4.x
Linux 4.x
Messaggi: 1147
Iscritto il: ven 30 set 2005, 13:54
Località: Udine

Conversione caratteri accentati in c

Messaggio da whites11 »

Ciao
vi chiedo ancora un piccolo consiglio per quanto riguarda la programmazione in c.
sto scrivendo un programma che fa il parsing di un file xml che contiene caratteri accentati.
Il parsing avviene correttamente, ma quando vado a stampare ciò che viene letto, le lettere accentate non vengono riconosciute.
Come faccio a risolvere?

esempio della stringa malfatta:

Codice: Seleziona tutto

cambio di modalità 
ciao!

EDIT

la cosa ideale sarebbe una stupidissima funzione di qualche libreria che mi converte la stringa nel charset giusto, in questo modo:

Codice: Seleziona tutto

convert(char* string, char *newstring)

Avatar utente
gioco
Packager
Packager
Messaggi: 900
Iscritto il: dom 19 giu 2005, 0:00
Slackware: last stable
Località: in the court of the Wesnoth king
Contatta:

Messaggio da gioco »

I caratteri accentati fanno parte della tabella ASCII estesa:
http://www.csiaf.unifi.it/online/principi/asciiext.html
Anche a me è capitato di doverli gestire in C, ma ora non ho i sorgenti di quel programma sotto mano. A memoria mi sembra che bisogna lavorare sul codice numerico dei caratteri. Non ho una gran memoria, se ritrovo il codice te lo posto :)

Rispondi