Mysql
 sql >> база данни >  >> RDS >> Mysql

GoLang - Продължете да използвате набор от знаци ISO-8859-1

Бих следвал инструкциите:„Close е необходимо за изтриване на всички останали частично преведени символи към изхода." Например,

package main

import (
    "bytes"
    "code.google.com/p/go-charset/charset"
    _ "code.google.com/p/go-charset/data"
    "fmt"
    "io/ioutil"
    "strings"
)

func toISO88591(utf8 string) (string, error) {
    buf := new(bytes.Buffer)
    w, err := charset.NewWriter("latin1", buf)
    if err != nil {
        return "", err
    }
    fmt.Fprintf(w, utf8)
    w.Close()
    return buf.String(), nil
}

func fromISO88591(iso88591 string) (string, error) {
    r, err := charset.NewReader("latin1", strings.NewReader(iso88591))
    if err != nil {
        return "", err
    }
    buf, err := ioutil.ReadAll(r)
    if err != nil {
        return "", err
    }
    return string(buf), nil
}

func main() {
    utfi := "£5 for Peppé"
    fmt.Printf("%q\n", utfi)
    iso, err := toISO88591(utfi)
    if err != nil {
        fmt.Println(err)
    }
    fmt.Printf("%q\n", iso)
    utfo, err := fromISO88591(iso)
    if err != nil {
        fmt.Println(err)
    }
    fmt.Printf("%q\n", utfo)
    fmt.Println(utfi == utfo)
}

Изход:

"£5 for Peppé"
"\xa35 for Pepp\xe9"
"£5 for Peppé"
true



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Начален час за изпълнение на Mysql събития

  2. Не мога да се свържа с Vagrant чрез HeidiSQL:Не мога да се свържа с MySQL сървър на „localhost“

  3. Странен MySQL Python mod_wsgi Не може да се свърже с MySQL сървър при проблем с „localhost“ (49)

  4. ГРЕШКА 1698 (28000):Достъпът е отказан за потребител 'root'@'localhost'

  5. Как мога да избера всички записи с изключение на първите 3 записа?