# Carattere e accentato

**URL:** <https://www.ruby-forum.com/t/carattere-e-accentato/160154>\
**Category:** IT\
**Created:** [February 12, 2009, 11:37am UTC](https://www.ruby-forum.com/t/carattere-e-accentato/160154 "2009-02-12T11:37:11Z")\
**Posts on this page:** 9\
**Page:** 1

<div class="post-metadata">

**Author:** ![giampiz](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/g/c67d28/32.png) [@giampiz](https://www.ruby-forum.com/u/giampiz)\
**Post date:** [February 12, 2009, 11:37am UTC](https://www.ruby-forum.com/t/carattere-e-accentato/160154/1 "2009-02-12T11:37:11Z")

</div>

ciao a tutti  
ho notato quanto segue:  
stringa = “il tempo Ã¨ bello”  
p stringa  
produce  
“il tempo \350 bello”  
sapete dirmi qual Ã¨ il modo migliore, piÃ¹ semplice, di ovviare al  
problema?  
grazie in anticipo per le vostre risposte

---

<div class="post-metadata">

**Author:** ![giampiz](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/g/c67d28/32.png) [@giampiz](https://www.ruby-forum.com/u/giampiz)\
**Post date:** [February 12, 2009, 11:51am UTC](https://www.ruby-forum.com/t/carattere-e-accentato/160154/2 "2009-02-12T11:51:21Z")

</div>

2009/2/12 Giampiero Z. [removed\_email\_address@domain.invalid](mailto:removed_email_address@domain.invalid):

> ciao a tutti  
> ho notato quanto segue:  
> stringa = “il tempo è bello”  
> p stringa  
> produce  
> “il tempo \350 bello”  
> sapete dirmi qual è il modo migliore, più semplice, di ovviare al  
> problema?

puts stringa funziona.

per quanto riguarda gli script: in genere si sconsiglia di usare  
caratteri accentati nel codice (non è una questione di ruby, vale più  
o meno per tutti i linguaggi); tuttavia, la soluzione è usare sempre e  
comunque lo stesso encoding (io uso felicemente utf8 e non ho ancora  
avuto problemi).

pietro

---

<div class="post-metadata">

**Author:** ![giampiz](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/g/c67d28/32.png) [@giampiz](https://www.ruby-forum.com/u/giampiz)\
**Post date:** [February 12, 2009, 12:26pm UTC](https://www.ruby-forum.com/t/carattere-e-accentato/160154/3 "2009-02-12T12:26:57Z")

</div>

> puts stringa funziona.
> 
> per quanto riguarda gli script: in genere si sconsiglia di usare  
> caratteri accentati nel codice (non ï¿½ una questione di ruby, vale piï¿½  
> o meno per tutti i linguaggi); tuttavia, la soluzione ï¿½ usare sempre e  
> comunque lo stesso encoding (io uso felicemente utf8 e non ho ancora  
> avuto problemi).
> 
> pietro  
> grazie Pietro  
> Ã¨ vero puts stringa funziona  
> scusa l’ignoranza, ma cosa significa usare un encoding; si sta parlando  
> di un parametro di configurazione dell’ambie nte Ruby? se sÃ¬, come si  
> imposta?  
> grazie

---

<div class="post-metadata">

**Author:** ![giampiz](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/g/c67d28/32.png) [@giampiz](https://www.ruby-forum.com/u/giampiz)\
**Post date:** [February 12, 2009, 1:21pm UTC](https://www.ruby-forum.com/t/carattere-e-accentato/160154/4 "2009-02-12T13:21:32Z")

</div>

Pietro G. wrote:

> Il 12 febbraio 2009 12.26, Giampiero Z. [removed\_email\_address@domain.invalid](mailto:removed_email_address@domain.invalid) ha scritto:
> 
> > > pietro  
> > > cosa significa usare un encoding; si sta parlando di un parametro  
> > > di configurazione dell’ambie nte Ruby? se sï¿½, come si imposta?
> 
> no, ï¿½ una cosa che riguarda i file, le stringhe etc. e come vengono  
> scritte.
> 
> ti ï¿½ mai capitato di vedere una pagina web in cui i caratteri  
> accentati, gli apici, etc. sono sostituiti da simboli strani?
> 
> questo accade quando viene dichiarato un formato ma ne viene usato un  
> altro.  
> sÃ¬ capisco  
> quello che non capisco Ã¨: dove devo intervenire per specificare che  
> voglio usare utf8?

---

<div class="post-metadata">

**Author:** ![giampiz](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/g/c67d28/32.png) [@giampiz](https://www.ruby-forum.com/u/giampiz)\
**Post date:** [February 12, 2009, 12:56pm UTC](https://www.ruby-forum.com/t/carattere-e-accentato/160154/5 "2009-02-12T12:56:02Z")

</div>

Il 12 febbraio 2009 12.26, Giampiero Z. [removed\_email\_address@domain.invalid](mailto:removed_email_address@domain.invalid) ha scritto:

> > pietro  
> > cosa significa usare un encoding; si sta parlando di un parametro  
> > di configurazione dell’ambie nte Ruby? se sì, come si imposta?

no, è una cosa che riguarda i file, le stringhe etc. e come vengono  
scritte.

ti è mai capitato di vedere una pagina web in cui i caratteri  
accentati, gli apici, etc. sono sostituiti da simboli strani?

questo accade quando viene dichiarato un formato ma ne viene usato un  
altro.

---

<div class="post-metadata">

**Author:** ![giampiz](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/g/c67d28/32.png) [@giampiz](https://www.ruby-forum.com/u/giampiz)\
**Post date:** [February 12, 2009, 2:07pm UTC](https://www.ruby-forum.com/t/carattere-e-accentato/160154/6 "2009-02-12T14:07:08Z")

</div>

Forse non c’entra ciÃ² che sto per dirti perÃ² te lo dico lo stesso, io la  
dichiarazione la faccio nel file database.yml:

development:  
adapter: mysql  
database: softwdb  
username: root  
password:  
host: localhost  
encoding: utf8

---

<div class="post-metadata">

**Author:** ![giampiz](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/g/c67d28/32.png) [@giampiz](https://www.ruby-forum.com/u/giampiz)\
**Post date:** [February 12, 2009, 3:50pm UTC](https://www.ruby-forum.com/t/carattere-e-accentato/160154/7 "2009-02-12T15:50:38Z")

</div>

grazie a tutti per le risposte  
provo a informarmi con qualche ricerca mirata su internet, ora che mi Ã¨  
chiaro cosa devo ottenere

---

<div class="post-metadata">

**Author:** ![giampiz](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/g/c67d28/32.png) [@giampiz](https://www.ruby-forum.com/u/giampiz)\
**Post date:** [February 13, 2009, 10:17pm UTC](https://www.ruby-forum.com/t/carattere-e-accentato/160154/8 "2009-02-13T22:17:43Z")

</div>

ad esempio

puts $KCODE  
p “Questa Ã¨ una stringa”  
$KCODE = “UTF-8”  
puts $KCODE  
p “Questa Ã¨ una stringa”

produce  
NONE  
“Questa \303\250 una stringa”  
UTF8  
“Questa Ã¨ una stringa”

---

<div class="post-metadata">

**Author:** ![giampiz](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/g/c67d28/32.png) [@giampiz](https://www.ruby-forum.com/u/giampiz)\
**Post date:** [February 12, 2009, 3:27pm UTC](https://www.ruby-forum.com/t/carattere-e-accentato/160154/9 "2009-02-12T15:27:19Z")

</div>

Luigi M. wrote:

> Forse non c’entra ciÃ² che sto per dirti perÃ² te lo dico lo stesso, io la  
> dichiarazione la faccio nel file database.yml:
> 
> development:  
> adapter: mysql  
> database: softwdb  
> username: root  
> password:  
> host: localhost  
> encoding: utf8

Si deve fare attenzione a conservare lo stesso encoding ovunque.

1. Nel database, come mostrato dall’esempio di Luigi.

2. Nelle pagine web, di solito mettendo nell’head  
  
in risposta al quale i browser convertiranno in utf-8 qualsiasi testo  
che gli utenti del sito inseriranno nei form.

3. Nel tuo editor, quando scrivi stringhe con caratteri accentati.

4. Nel tuo terminale, se ad esempio usi un client a command line per  
inserire dati nel db

5. Nei dati che eventualmente importi nel db e che potrebbero avere  
encoding differenti.

6. Mi sarÃ² di sicuro dimenticato qualcosa 🙂

GiÃ che ci sono, l’encoding che in tanti usano senza neppure saperlo in  
Windows Ã¨ il Windows-1252 che non Ã¨ mai stato standardizzato. Da quello  
perÃ² Ã¨ nato l’ISO-8859-1 (c’Ã¨ qualche piccola differenza) che include i  
caratteri delle lingue dell’Europa occidentale ed Ã¨ molto usato sul web.  
Meglio perÃ² usare l’ISO-8859-15 che include qualche lettera non nostra  
che mancava nell’altro e soprattutto il carattere per l’Euro. Meglio  
ancora usare UTF-8 che include tutti i caratteri del mondo e quindi non  
taglia fuori nessuno.

> **[Windows-1252](https://en.wikipedia.org/wiki/Windows-1252)**
>
> Windows-1252 or CP-1252 (code page 1252) is a single-byte character encoding of the Latin alphabet (with additions) that was used by default in Microsoft Windows for English and many Romance and Germanic languages including Spanish, Portuguese, French, and German (though missing uppercase ẞ). This character-encoding scheme is used throughout the Americas, Western Europe, Oceania, and much of Africa. All modern operating systems, including Windows, now use Unicode code points and text encodings by...

> **[ISO/IEC 8859-1](https://en.wikipedia.org/wiki/ISO_8859-1)**
>
> ISO/IEC 8859-1:1998, Information technology — 8-bit single-byte coded graphic character sets — Part 1: Latin alphabet No. 1, is part of the ISO/IEC 8859 series of ASCII-based standard character encodings, first edition published in 1987. ISO/IEC 8859-1 encodes what it refers to as "Latin alphabet no. 1", consisting of 191 characters from the Latin script. This character-encoding scheme is used throughout the Americas, Western Europe, Oceania, and much of Africa. It is the basis for some popular 8...

> **[UTF-8](https://en.wikipedia.org/wiki/UTF_8)**
>
> UTF-8 is a variable-length character encoding standard used for electronic communication. Defined by the Unicode Standard, the name is derived from Unicode (or Universal Coded Character Set) Transformation Format – 8-bit.
> UTF-8 is capable of encoding all 1,112,064\[a\] valid character code points in Unicode using one to four one-byte (8-bit) code units. Code points with lower numerical values, which tend to occur more frequently, are encoded using fewer bytes. It was designed for backward compati...

Paolo
