@proGO

Страница 1047 из 1674
nezorflame
11.12.2017
12:47:53
надо еще ребят из конторы зазвать

Alexander
11.12.2017
12:48:30
Vadim
11.12.2017
12:55:47
Всем добрый день! У меня жуткая проблема которую не знаю как решить.. Я пользуюсь go для работы с ботами Проблема в emoji. Дело в том, что "БЫвшвая" ? например в c/c++ кодируется двумя байтами -\uD83E\uDD37 А в гоу - одним байтом \U0001F937 Из -за этого у меня разваливается форматирование в entities Вот таблица кодировки этой эмодзи http://www.fileformat.info/info/unicode/char/1f937/index.htm А вот как "плывет" форматирование http://recoilmeblog.tggram.com/post/62 И я уже всеь мозг сломал(( Подксажите как так магически два байта в один конвертятся при json encode/decode и как этого избежать? в Go вот эта последовательность \ud83e\udd37 - анмаршалится как одна руна \U0001f937 а мне нужно две или способ "развернуть " эту руну (\U0001f937) в две руны (\ud83e\udd37)

Google
Vadim
11.12.2017
13:10:23
хранишь ты в чем?
я предполагаю что в utf8. У поля тип string. Делается json encode к \uD83E\uDD37 и в поле лежит \U0001F937 после этого. Что это за utf не очень понятно

Aleksandr
11.12.2017
13:11:31
хранишь в utf8, логично что utf32 туда не катит. все ок

Vadim
11.12.2017
13:12:24
хранишь в utf8, логично что utf32 туда не катит. все ок
но выше написано что один байт - это utf32?

Aleksandr
11.12.2017
13:13:07
utf16 точнее

для utf-8 это не валидные кодпойнты

телеграм просто судя по документации utf16 использует

но сам принимает utf-8

Nikolay
11.12.2017
13:20:12
а кто-то серьезно пользуется utf-32?

вроде ж 16 даже не заполнен далеко

Aleksandr
11.12.2017
13:20:43
поэтому оттуда тебе приходит два кодпойнта в 16, а обратно тебе нужно один в 8

Google
Aleksandr
11.12.2017
13:21:15
вроде ж 16 даже не заполнен далеко
так и 8 не заполнен. не в этом же причина

документации ботов?
да. поиск по странице utf-16/utf-8

Vadim
11.12.2017
13:25:10
utf16 точнее
конвертация ?‍♀️ в utf16 вернула такую последовательность рун - 鿰랤 Но не уверен что все правильно сделал( Вообще можно utf8 в utf16 перегонять?

Vadim
11.12.2017
13:26:45
А что у тебя в utf-8, покажи
func TestJson(t *testing.T) { //\ud83e\udd37\u200d\u2642\ufe0f //\U0001f937\u200d\u2642\ufe0f //placeOfInterest := "\U0001f937\u200d\u2642\ufe0f" //string([]rune{\ud83e}) //`?‍♂️` //placeOfInterest := `?` //placeOfInterest := "\U0001F937" //`?` placeOfInterest := string([]byte{0xf0, 0x9f, 0xa4, 0xb7}) // это она `?` //placeOfInterest := "\ud83e\udd37" //error escape sequence is invalid unicode point fmt.Printf("plain string: ") fmt.Printf("%s", placeOfInterest) fmt.Printf("\n") fmt.Printf("quoted string: ") fmt.Printf("%+q", placeOfInterest) fmt.Printf("\n") fmt.Printf("hex bytes: ") for i := 0; i < len(placeOfInterest); i++ { fmt.Printf("%x ", placeOfInterest[i]) } fmt.Printf("\n") s, err := DecodeUTF16([]byte(placeOfInterest)) if err != nil { panic(err) } fmt.Println(s) fmt.Printf("hex bytes utf 16: ") for i := 0; i < len(placeOfInterest); i++ { fmt.Printf("%x ", placeOfInterest[i]) } } func DecodeUTF16(b []byte) (string, error) { if len(b)%2 != 0 { return "", fmt.Errorf("Must have even length byte slice") } u16s := make([]uint16, 1) ret := &bytes.Buffer{} b8buf := make([]byte, 4) lb := len(b) for i := 0; i < lb; i += 2 { u16s[0] = uint16(b[i]) + (uint16(b[i+1]) << 8) r := utf16.Decode(u16s) n := utf8.EncodeRune(b8buf, r[0]) ret.Write(b8buf[:n]) } return ret.String(), nil }

Savely
11.12.2017
13:27:03
\uD83E

Вот это то бишь?

Vadim
11.12.2017
13:27:55
Вот это то бишь?
нет string([]byte{0xf0, 0x9f, 0xa4, 0xb7}) == ? == "\U0001F937"

неважно как присвоить строке "бывшую", она не разворачивается в utf16 исходный... Возможно я не так разворачиваю

Savely
11.12.2017
13:29:44
нет string([]byte{0xf0, 0x9f, 0xa4, 0xb7}) == ? == "\U0001F937"
ну вот это: 0xf0, 0x9f, 0xa4, 0xb7 — utf-8 а это \U0001F937 — utf-32

utf-16 в твоем случае будет D83E DD37

Vadim
11.12.2017
13:30:19
Savely
11.12.2017
13:30:42
пятизначные 1FXXX это utf-32

Savely
11.12.2017
13:33:54
Aleksandr
11.12.2017
13:34:25
Vadim
11.12.2017
13:34:27
utf-16 в твоем случае будет D83E DD37
Да да! Как получить D83E DD37 из "\U0001F937" ??

Google
Aleksandr
11.12.2017
13:34:35
Savely
11.12.2017
13:34:45
можно нвзать utf-16 двух байтовым utf-8 тогда

Vadim
11.12.2017
13:35:10
я ссылку дал выше
СПАИСИИИБО!!!

Aleksandr
11.12.2017
13:35:12
можно нвзать utf-16 двух байтовым utf-8 тогда
не стоит. в данном случае это utf-8, а не utf-32

Savely
11.12.2017
13:35:32
не стоит. в данном случае это utf-8, а не utf-32
тогда как выглядит "нативный" utf-32?

Aleksandr
11.12.2017
13:36:16
тогда как выглядит "нативный" utf-32?
точно так же. но в данном случае utf-8

Savely
11.12.2017
13:37:35
?

Aleksandr
11.12.2017
13:38:33
?
если utf-8 состоит из кодпойнтов занимающих от 1 до 4 байт, то логично, что 4байтовые кодпойнты будут похожи на utf-32, который тоже состоит из 4 байтов.

Alexey
11.12.2017
14:54:00
http://gophercon-russia.ru/
6к - чет странная цена

Alexander
11.12.2017
14:54:13
Alexey
11.12.2017
14:54:33
почему не 12 :)

Vany
11.12.2017
14:54:40
мы подумали и решили что норм

Alexey
11.12.2017
14:54:50
ну лан

Alexander
11.12.2017
14:55:04
почему не 12 :)
хз, у меня все контора оплачивает)

Vany
11.12.2017
14:55:19
не 12, потому что нельзя сексуальный подтекст в оскорблениях, на него видимо нужно отдельный контракт заключать

Alexey
11.12.2017
14:56:04
там будут девушки-модели? ?

Vany
11.12.2017
14:56:53
судя по правилам да, но замотанные в одежду как стикер предыдущего оратора

Alexey
11.12.2017
14:59:39
Говорят, что сотрудники зажрались с этими корпоративами и совсем перестали ценить халявные вечеринки. Теперь им моделей подавай, да помоложе, да покрасивее: Спонсор поста канал @contentreview . В нем Вы найдете посты про операторов, тарифы, и другие новости технологий. Беспощадно, ежедневно, в простой и понятной подаче goo.gl/2ftftm

Google
Alexey
11.12.2017
14:59:46
я это имел ввиду

Alexey
11.12.2017
15:11:52
мы устроим свой гоферкон с одним спикерои и ш..... хмм... моделями

Admin
ERROR: S client not available

Alexey
11.12.2017
15:13:08
тем более, за 6к в москве можно вызвать 2 модели... на час

Fedor
11.12.2017
15:13:10
а причем тут гофер

Alexey
11.12.2017
15:15:00
Мы не планируем поднимать цену с каждым анонсированным спикером

Mike
11.12.2017
15:18:19
Vany
11.12.2017
15:21:01
А какие сейчас темы могут быть кроме "ждём 2.0" и "смотрите какую мыв либу запилили" ?

Damir
11.12.2017
15:24:23
Всем привет! Ребят вопрос: когда обновляю страницу в браузере, вебсервер на го получает 2 запроса, одинаковых это нормально?

Alexey
11.12.2017
15:24:40
да :)

Damir
11.12.2017
15:25:05
а если я что то ложить буду в БД

Nikolay
11.12.2017
15:25:07
а точно один из них не на favicon?

Damir
11.12.2017
15:25:58
ложить?
я про то что это нормально, не понял что шутка)

ща нетворк гляну

Google
Damir
11.12.2017
15:26:42
точно, фавикон

Aleksandr
11.12.2017
15:28:11
точно, фавикон
то есть прежде чем спросить ты даже не посмотрел что за запросы, но написал что одинаковых. молодец

Damir
11.12.2017
15:28:52
а у меня же обработчик на / стоит, он все равно обработает / favicon.ico ?

Vany
11.12.2017
15:29:50
Нет, он обрабатывает то, что написано в документации.

Svyatoslav
11.12.2017
15:36:14
а у меня же обработчик на / стоит, он все равно обработает / favicon.ico ?
зависит от роутера. если тебе нужен explicit match, можешь взять что-нибудь вроде https://github.com/julienschmidt/httprouter

Alexander
11.12.2017
17:29:00
Nik
11.12.2017
18:19:58
Вопрос из разряда некрофилии

corba либа есть на golang

Den
11.12.2017
18:32:54
а как такой джисон в просто юникод преобразовать "\\u0440\\u0435\\u043c\\u043e\\"?

это .har через эмуляцию мобильного приложения в браузере собран

на 500 мегабайт, чтоб не писать запрашивалку инфы через апи

Aleksandr
11.12.2017
18:48:40
json - это тип сериализации. что тебе нужно конкретно?

Den
11.12.2017
18:52:03
и потом \u043e в utf8 файл

Aleksandr
11.12.2017
18:52:41
отпарсить регулярками файл
сам json анмарашаллить не хочешь, верно?

Den
11.12.2017
18:53:15
нет, он потом уйдет в csv конвертилку

Aleksandr
11.12.2017
18:54:19
ну тогда читай кодпойнты, заменяй двойные слэши на одинарные, с одинарным слэшом - это валидная строка

Страница 1047 из 1674