Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2005.10.16;
Скачать: CL | DM;

Вниз

Глупый вопрос про String и про кодировки   Найти похожие ветки 

 
Ji ©   (2005-09-21 00:13) [0]

Если я переменную типа String запишу в текстовый файл, то она запишется в кодировке ANSI. Соответственно если буду читать файл в кодировке ANSI, то все будет ОК. (проверено экспериментально)

Может ли быть такая ситуация, что String запишется в файл в другой кодировке? Если может, то при каких условиях? Может ли это зависеть от языковых настроек windows?


 
Anatoly Podgoretsky ©   (2005-09-21 00:40) [1]

Никаких перекодировок при записи делаться не будет.


 
Джо ©   (2005-09-21 01:14) [2]

Нет никаких "кодировок" у файлов. Это абстракция.


 
Германн ©   (2005-09-21 01:36) [3]

2 Джо ©   (21.09.05 01:14) [2]
У файлов есс-но нет никаких кодировок. :) (Мухи и котлеты отдельно).

Но вот текст в них может быть записан в некоей кодировке!
А уж если это текстовый файл в понятии Windows, то ...

То бишь запись и чтение в/из файл/файла подразумевают наличие некоей "кодировки".


 
Brother ©   (2005-09-21 06:56) [4]

Win и Dos кодировки отличаются
Из под Delphi кажись Win кодировка.
Побалуйтесь с консольными и оконными приложениями, хотя я не знаю что касается файлов, но в консольных прилож. разницу в кодировке видно.


 
evvcom ©   (2005-09-21 09:19) [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 09:47) [6]

Упс.


 
Anatoly Podgoretsky ©   (2005-09-21 10:12) [7]

Brother ©   (21.09.05 06:56) [4]
Дельфи к кодировкам почти не имеет отношения, это прерогатива программиста.


 
Ji ©   (2005-09-21 10:22) [8]


> [1] Anatoly Podgoretsky

Спасибо, успокоили.


> Все остальные

Имеется ввиду скорее не разница между DOS и WIN кодировками, а между русским и например китайским windows. Если у меня в программе две кнопки
WriteToFile("Моя лабуда");
ReadFromFile(S);
Так вот, я запишу в файл строку, а потом этот файл и эту прогу отправлю в китай. И они там выполнят ReadFromFile() то будет ли S = "Моя лабуда". Вот в чем был вопрос.


 
Anatoly Podgoretsky ©   (2005-09-21 10:26) [9]

Будет, можешь не сомневаться.
А вот Label.Caption := S уже не гарантируется, тут уже завязано на кодировки.



Страницы: 1 вся ветка

Текущий архив: 2005.10.16;
Скачать: CL | DM;

Наверх




Память: 0.49 MB
Время: 0.027 c
2-1125398819
FXeS
2005-08-30 14:46
2005.10.16
Динамические массивы


3-1125557050
magnus
2005-09-01 10:44
2005.10.16
кодировка БД


1-1127395980
.::AndreW::.
2005-09-22 17:33
2005.10.16
На мультемелийной клаве есть три кнопки запуск Word, Exel...


1-1127710502
Ярослав
2005-09-26 08:55
2005.10.16
выделение прямоугольного блока


14-1127550430
WinXP
2005-09-24 12:27
2005.10.16
WinXp и рабочая группа