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

Erlang emysql Проблем с кодирането на емоджи за iPhone

Всичко е свързано с utf-8 кодиране. В Erlang списък със знаци, във вашия случай [240,159,152,130] , обикновено не са кодирани, но са кодовите точки на Unicode. Когато извлечете данните, получавате двоичен файл, съдържащ байтове за кодиране utf-8 от вашите знаци. Къде точно се е случило това кодиране не знам. От обвивката на erlang:

10> Bin = <<195,176,194,159,194,152,194,130>>.   
<<195,176,194,159,194,152,194,130>>
11> <<M/utf8,N/utf8,O/utf8,P/utf8,R/binary>> = Bin.
<<195,176,194,159,194,152,194,130>>
12> [M,N,O,P].
[240,159,152,130]

Работата с unicode в erlang е доста проста, символите в списъците обикновено са кодовите точки на unicode и много рядко се кодират, докато съхраняването им в двоични файлове означава, че трябва да ги кодирате по някакъв начин, тъй като двоичните файлове са просто масиви от байтове. Кодирането по подразбиране е utf-8. В модула unicode има функции за преобразуване между уникод списъци и двоични файлове.




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Прехвърляне на индекс към временна таблица от обикновена таблица?

  2. Присъединяване на таблици с проблем SUM в MYSQL

  3. Homestead - Свързване с моята база данни

  4. Не мога да се свържа с MySQL сървър на '127.0.0.1' (10061) (2003)

  5. Параметър MyBatis от HashMap