Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Начинающим";
Текущий архив: 2005.10.16;
Скачать: [xml.tar.bz2];

Вниз

Глупый вопрос про 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;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.46 MB
Время: 0.036 c
1-1127472417
DelphiLexx
2005-09-23 14:46
2005.10.16
Соединение TImage линиями и их движение


2-1127231702
Quattro
2005-09-20 19:55
2005.10.16
CreateWindow


5-1102767773
alo
2004-12-11 15:22
2005.10.16
как перенести свойство предка из published в public?


3-1125772095
Eagle Owl
2005-09-03 22:28
2005.10.16
Подключение к MySQL при помощи ADO + MyODBC


3-1125591659
suharew
2005-09-01 20:20
2005.10.16
Кэшируются базы???





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский