Mysql
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Mysql

GoLang - Kiên trì sử dụng bộ ký tự ISO-8859-1

Tôi sẽ làm theo hướng dẫn:"Close là cần thiết để chuyển bất kỳ ký tự được dịch một phần nào còn lại vào đầu ra. "Ví dụ:

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)
}

Đầu ra:

"£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. Chuyển số làm tên cột trong câu lệnh chọn của Sql

  2. Nhúng mysql vào ứng dụng java trên máy tính để bàn

  3. Hiệu suất của mysql GIỮA .. là gì?

  4. Bảng 'mysql.user' không tồn tại:ERROR

  5. MySQL - Không thể tạo Chế độ xem với biến SET bên trong