![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Глупый вопрос про String и про кодировки [D6, WinXP]
Ji © (2005-09-21 00:13:00)Если я переменную типа String запишу в текстовый файл, то она запишется в кодировке ANSI. Соответственно если буду читать файл в кодировке ANSI, то все будет ОК. (проверено экспериментально)
Может ли быть такая ситуация, что String запишется в файл в другой кодировке? Если может, то при каких условиях? Может ли это зависеть от языковых настроек windows?
Anatoly Podgoretsky (2005-09-21 10:26:00) [1]Будет, можешь не сомневаться.
А вот Label.Caption := S уже не гарантируется, тут уже завязано на кодировки.
Ji (2005-09-21 10:22:00) [2]
> [1] Anatoly Podgoretsky
Спасибо, успокоили.
> Все остальные
Имеется ввиду скорее не разница между DOS и WIN кодировками, а между русским и например китайским windows. Если у меня в программе две кнопки
WriteToFile('Моя лабуда');
ReadFromFile(S);
Так вот, я запишу в файл строку, а потом этот файл и эту прогу отправлю в китай. И они там выполнят ReadFromFile() то будет ли S = 'Моя лабуда'. Вот в чем был вопрос.
Anatoly Podgoretsky (2005-09-21 10:12:00) [3]Brother © (21.09.05 06:56) [4]
Дельфи к кодировкам почти не имеет отношения, это прерогатива программиста.
Brother (2005-09-21 09:47:00) [4]Упс.
evvcom (2005-09-21 09:19:00) [5]если ты пишешь str:='Моя лабуда'; то в файл запишутся коды:
CC EE FF 20 EB E0 E1 F3 E4 E0
Открывая этот файл блокнотом ты увидишь текст 'Моя лабуда'. Естественно из под ДОСа увидишь "иероглифы".
Если же хочешь получить файл в ДОС (OEM) кодировке, можешь написать
str:='Моя лабуда';
CharToOem(PChar(str), PChar(str));
или так:
str:=#$8C#$AE#$EF#$20#$AB#$A0#$A1#$E3#$A4#$A0;
тогда файл будет нормально выглядеть "из под ДОСа"
> Из под Delphi кажись Win кодировка.
Delphi тут совсем не при чем.
Brother (2005-09-21 06:56:00) [6]Win и Dos кодировки отличаются
Из под Delphi кажись Win кодировка.
Побалуйтесь с консольными и оконными приложениями, хотя я не знаю что касается файлов, но в консольных прилож. разницу в кодировке видно.
Германн (2005-09-21 01:36:00) [7]2 Джо © (21.09.05 01:14) [2]
У файлов есс-нонет никаких кодировок. :) (Мухи и котлеты отдельно).
Но вот текст в них может быть записан в некоей кодировке!
А уж если это текстовый файл в понятии Windows, то ...
То бишь записьи чтениев/из файл/файла подразумевают наличие некоей "кодировки".
Джо (2005-09-21 01:14:00) [8]Нет никаких "кодировок" у файлов. Это абстракция.
Anatoly Podgoretsky (2005-09-21 00:40:00) [9]Никаких перекодировок при записи делаться не будет.