|
|
|
кодировка unicode Delphi Xe
|
|||
|---|---|---|---|
|
#18+
Всем доброго дня! Недавно перевел проект с Дельфи 7 на Delphi Xe. При работе с INI-файлом, заметил, что русские буквы читаются в таком виде "Добрый день! Салон красоты "Beauty"", хотя в самом файле русские буквы сидят нормально. Посмотрел кодировку файла через Notepad++ - стоит UTF-8. Если же при чтении добавить UTF8toAnsi, то все нормально. Почему я должен конвертить в Ansi? Разве Delphi Xe не по умолчанию unicode идет? Или я чего-то недогоняю ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.03.2018, 07:40 |
|
||
|
кодировка unicode Delphi Xe
|
|||
|---|---|---|---|
|
#18+
читаю через Ini.ReadString ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.03.2018, 07:42 |
|
||
|
кодировка unicode Delphi Xe
|
|||
|---|---|---|---|
|
#18+
aidynchik, В Notepad++ смени кодировку на “UTF-8 с BOM” ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.03.2018, 09:16 |
|
||
|
кодировка unicode Delphi Xe
|
|||
|---|---|---|---|
|
#18+
Я с ini перешёл на MEMini 1. Нужно поменять код создания объекта memini Код: pascal 1. 2. 3. 4. 5. при сохранении нужно не забыть перед Free добавить UpdateFile; 2. Сам ini файл, если он уже есть, то его нужно пересохранить в utf8 Блокнотом ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.03.2018, 09:47 |
|
||
|
кодировка unicode Delphi Xe
|
|||
|---|---|---|---|
|
#18+
aidynchik, в ini-файле отсутствует маркер BOM (Bytes Order Mark), поэтому про то, что там UTF-8, Delphi не узнает никак. Добавь маркер. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.03.2018, 12:17 |
|
||
|
кодировка unicode Delphi Xe
|
|||
|---|---|---|---|
|
#18+
GunSmoker, А как это сделать? Я не могу заставить пользователей заходить в нотпад и менять кодировку. Средствами Дельфи я могу сделать маркер, при создании файла? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.03.2018, 12:19 |
|
||
|
кодировка unicode Delphi Xe
|
|||
|---|---|---|---|
|
#18+
aidynchikGunSmoker, А как это сделать? Я не могу заставить пользователей заходить в нотпад и менять кодировку. Средствами Дельфи я могу сделать маркер, при создании файла? В самых новых дельфях можно так: Код: pascal 1. 2. 3. 4. Есть ли такой overload в XE хз. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.03.2018, 12:24 |
|
||
|
кодировка unicode Delphi Xe
|
|||
|---|---|---|---|
|
#18+
Windows понимает ini-файлы в кодировках ANSI и UTF16LE. Для UTF8 нужно использовать TMemIni. BOM лучше прописать. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.03.2018, 14:11 |
|
||
|
кодировка unicode Delphi Xe
|
|||
|---|---|---|---|
|
#18+
aidynchikЯ не могу заставить пользователей заходить в нотпад и менять кодировку. Ну с этого бы и начинал :) aidynchikСредствами Дельфи я могу сделать маркер, при создании файла? При создании или чтении? При создании - пишешь сначала нужные 3 байта. Гугли. При чтении без BOM, используй метод, описанный Лись. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.03.2018, 16:57 |
|
||
|
кодировка unicode Delphi Xe
|
|||
|---|---|---|---|
|
#18+
aidynchikЯ не могу заставить пользователей заходить в нотпад и менять кодировку а хрен ли они вообще в ini лезут? если лезут, значит заявили себя крутыми и умелыми, пусть тогда не нарушают законов если "мы ничего не умеем, оно само" - пусть не лезут ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.03.2018, 18:17 |
|
||
|
кодировка unicode Delphi Xe
|
|||
|---|---|---|---|
|
#18+
aidynchikРазве Delphi Xe не по умолчанию unicode идет? во-первых, не надо путать unicode и utf во-вторых, не важно что есть в Delphi, а важно, что есть в ini ini - это стандарт Microsoft Windows, и по стандарту там обычная ANSI CP, а никакой не юникод. соответсвенно та часть Дельфи, которая работает с ini-файлами по умолчанию работает по стандарту. если тебе надо отойти от стандарта и использовать нестандартную кодировку - то это надо у Дельфи явн опопросить, и то если она это умеет. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.03.2018, 18:19 |
|
||
|
|

start [/forum/topic.php?fid=58&msg=39608951&tid=2041181]: |
0ms |
get settings: |
6ms |
get forum list: |
10ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
164ms |
get topic data: |
6ms |
get forum data: |
2ms |
get page messages: |
30ms |
get tp. blocked users: |
1ms |
| others: | 237ms |
| total: | 460ms |

| 0 / 0 |
