Автор | Сообщение |
|
| |
Пост N: 9
Зарегистрирован: 25.01.18
|
|
Отправлено: 16.04.18 08:46. Заголовок: Научите работать с UTF-8 pls
Хотя бы читать текстовый файл в формате UTF-8. На форуме и в дистре Харбор+Минигуи не нашел ничего подходящего.
|
|
|
Ответов - 6
[только новые]
|
|
|
| Администратор
|
Пост N: 3720
Зарегистрирован: 23.05.05
|
|
Отправлено: 16.04.18 09:00. Заголовок: Можно просто использ..
Можно просто использовать функции: HB_STRTOUTF8 HB_UTF8TOSTR
|
|
|
|
| постоянный участник
|
Пост N: 5816
Зарегистрирован: 12.09.06
|
|
Отправлено: 16.04.18 12:09. Заголовок: Смотри пример DBF_t..
|
|
|
|
| постоянный участник
|
Пост N: 1802
Зарегистрирован: 17.02.12
|
|
Отправлено: 16.04.18 16:26. Заголовок: SadStar2018 пишет Хо..
SadStar2018 пишет цитата: | Хотя бы читать текстовый файл в формате UTF-8. |
| Скрытый текст
FUNC IsUtf8( cFile ) LOCAL lRet := .F. LOCAL cBom := chr(239)+chr(187)+chr(191) LOCAL nLen := Len(cBom) LOCAL cBuf := space(nLen) LOCAL hFil := fOpen(cFile, 2) If hFil > 0 fRead (hFil, @cBuf, nLen) fClose(hFil) lRet := cBom == cBuf EndIf RETURN lRet FUNC myRead( cFile ) LOCAL cBuf := '' LOCAL cBom := chr(239)+chr(187)+chr(191) LOCAL nLen := Len(cBom) If file(cFile) cBuf := hb_MemoRead(cFile) If left(cBuf, nLen) == cBom cBuf := hb_Utf8ToStr(subs(cBuf, nLen + 1)) EndIf EndIf RETURN cBuf FUNC myWrite( cFile, cValue, lUtf8 ) LOCAL cBuf LOCAL cBom := chr(239)+chr(187)+chr(191) If ! empty(lUtf8) cValue := cBom + hb_StrToUtf8(cValue) EndIf RETURN hb_MemoWrit(cFile, cValue)
|
|
|
|
|
| постоянный участник
|
Пост N: 1577
Зарегистрирован: 09.10.06
|
|
Отправлено: 16.04.18 19:18. Заголовок: SergKis пишет: If l..
SergKis пишет: цитата: | If left(cBuf, nLen) == cBom |
| Проще использовать встроенную функцию hb_StrIsUTF8(cBuf)
|
|
|
|
| постоянный участник
|
Пост N: 1803
Зарегистрирован: 17.02.12
|
|
Отправлено: 16.04.18 20:50. Заголовок: Петр пишет Проще исп..
Петр пишет цитата: | Проще использовать встроенную функцию hb_StrIsUTF8(cBuf) |
| Хорошо что добавили , в hb 2.0 не было
|
|
|
|
| постоянный участник
|
Пост N: 1804
Зарегистрирован: 17.02.12
|
|
Отправлено: 16.04.18 22:32. Заголовок: Петр пишет Проще исп..
Петр пишет цитата: | Проще использовать встроенную функцию hb_StrIsUTF8(cBuf) |
| Может есть функция ( как hb_ps() типа hb_BomUtf8() ) для BOM Utf8 вместо chr(239)+chr(187)+chr(191) ?
|
|
|
|