|
|
|
UTF-8 to ANSI
|
|||
|---|---|---|---|
|
#18+
Генерю CSV файл и аттачу его к письму по SMTP. Но он кракозябровый. Когда открываю в нотпаде++ вижу кодировку UTF-8 Как преобразовать текст UTF-8 в ASCII? Convert(fStr, 'US7ASCII', 'AL32UTF8'); не работает. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.12.2016, 11:37 |
|
||
|
UTF-8 to ANSI
|
|||
|---|---|---|---|
|
#18+
Петров АндрейГенерю CSV файл и аттачу его к письму по SMTP. Но он кракозябровый. Когда открываю в нотпаде++ вижу кодировку UTF-8 Как преобразовать текст UTF-8 в ASCII? Convert(fStr, 'US7ASCII', 'AL32UTF8'); не работает. 1) US7 - Получишь только '?' ( US7 , AL32 ) - количество бит на символ 2) Дефольная кодировка текстового письма, в общем случае не определена и зависит от кучи причин, правильнее воспользоваться MIME контейнером с указанием правильной кодировки Но это совсем offtop для данной конференции p.s. Почитай что такое кодировка символов и как формируется тело письма ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.12.2016, 11:56 |
|
||
|
UTF-8 to ANSI
|
|||
|---|---|---|---|
|
#18+
Петров АндрейГенерю CSV файл и аттачу его к письму по SMTP. Но он кракозябровый. Когда открываю в нотпаде++ вижу кодировку UTF-8 Как преобразовать текст UTF-8 в ASCII? Convert(fStr, 'US7ASCII', 'AL32UTF8'); не работает. Notepad++ как правило подбирает кодировку для интерпретации файла исходя из его содержимого. Если файл формируется посредством PL/SQL, то есть возможность явно указать кодировку целевого файла. utl_i18n.string_to_raw , dbms_lob.converttoblob . ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.12.2016, 16:54 |
|
||
|
UTF-8 to ANSI
|
|||
|---|---|---|---|
|
#18+
AmKadПетров АндрейГенерю CSV файл и аттачу его к письму по SMTP. Но он кракозябровый. Когда открываю в нотпаде++ вижу кодировку UTF-8 Как преобразовать текст UTF-8 в ASCII? Convert(fStr, 'US7ASCII', 'AL32UTF8'); не работает. Notepad++ как правило подбирает кодировку для интерпретации файла исходя из его содержимого. Если файл формируется посредством PL/SQL, то есть возможность явно указать кодировку целевого файла. utl_i18n.string_to_raw , dbms_lob.converttoblob . Помимо кодировки, нужно еще чтобы mail client ее правильно отображал ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.12.2016, 21:08 |
|
||
|
UTF-8 to ANSI
|
|||
|---|---|---|---|
|
#18+
А причем тут Mail клиент? Я же его сохраняю на диск... Другое дело что в теле письма аттач выглядит вот так: Код: plsql 1. 2. 3. 4. 5. И далее: Код: plsql 1. 2. Но оно блин зараза не отображается по человечески... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.12.2016, 11:32 |
|
||
|
UTF-8 to ANSI
|
|||
|---|---|---|---|
|
#18+
Петров АндрейА причем тут Mail клиент? Я же его сохраняю на диск... ... Но оно блин зараза не отображается по человечески... хм... не отображается ГДЕ? И при чем здесь Oracle? Это видел? sql.ru FAQ Oracle Настройка и конфигурация CodePage, NLS_LANG: решение проблем с отображением сообщений на русском языке ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.12.2016, 13:10 |
|
||
|
UTF-8 to ANSI
|
|||
|---|---|---|---|
|
#18+
>> хм... не отображается ГДЕ? В Excel >> И при чем здесь Oracle? Как причем? Аттач и письмо генерится в Oracle. Поясню. Аттач заполняется из базы следующим образом Сначала данные забрасываются в коллекцию, после чего коллекция преобразуется в BLOB и далее аттачится к письму. 1) Забрасываем в коллекцию: Код: plsql 1. 2. 3. 4. 5. 6. 2) Формируем BLOB: Код: plsql 1. 2. 3. 4. 5. 6. 7. 3) Аттачим к письму: Код: plsql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. Что то я запутался в этих кодировках. select * from nls_database_parameters 6 NLS_CHARACTERSET AL32UTF8 19 NLS_NCHAR_CHARACTERSET AL16UTF16 20 NLS_RDBMS_VERSION 11.2.0.4.0 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.12.2016, 13:33 |
|
||
|
UTF-8 to ANSI
|
|||
|---|---|---|---|
|
#18+
Чтобы окончательно тебя запутать, добавлю: для того, чтобы Excel нормально отобразил CSV-файл в кодировке UTF-8, он (файл) должен содержать BOM. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.12.2016, 14:00 |
|
||
|
UTF-8 to ANSI
|
|||
|---|---|---|---|
|
#18+
AmKadЧтобы окончательно тебя запутать, добавлю: для того, чтобы Excel нормально отобразил CSV-файл в кодировке UTF-8, он (файл) должен содержать BOM. Или использовать Код: plsql 1. (разумеется с коррекцией кодировки вложения в заголовке mime на windows-1251) но в этом случае вступают ограничения однобайтовых кодировок, + языковые настройки конкретной установленной windows ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.12.2016, 14:34 |
|
||
|
UTF-8 to ANSI
|
|||
|---|---|---|---|
|
#18+
Vadim LejninИли использовать Код: plsql 1. Oracle не рекомендует использовать эту функцию (за исключением некоторых случаев, где данный таковым не является). Для конвертации ему подойдет один из двух пакетов, которые я привел выше. Хотя, по-хорошему, судя по приведенным кускам кода работы с коллекциями, решение нуждается в ревью целиком. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.12.2016, 15:00 |
|
||
|
UTF-8 to ANSI
|
|||
|---|---|---|---|
|
#18+
AmKadVadim LejninИли использовать Код: plsql 1. Oracle не рекомендует использовать эту функцию (за исключением некоторых случаев, где данный таковым не является). Для конвертации ему подойдет один из двух пакетов, которые я привел выше. Хотя, по-хорошему, судя по приведенным кускам кода работы с коллекциями, решение нуждается в ревью целиком. Дык он ее уже использует ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.12.2016, 15:04 |
|
||
|
UTF-8 to ANSI
|
|||
|---|---|---|---|
|
#18+
Vadim LejninДык он ее уже используетИ в конкретном данном случае - бессмысленно. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.12.2016, 15:07 |
|
||
|
|

start [/forum/topic.php?fid=52&gotonew=1&tid=1886831]: |
0ms |
get settings: |
7ms |
get forum list: |
22ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
196ms |
get topic data: |
8ms |
get first new msg: |
5ms |
get forum data: |
2ms |
get page messages: |
49ms |
get tp. blocked users: |
1ms |
| others: | 209ms |
| total: | 505ms |

| 0 / 0 |
