кодировка 1251 HELP!!
От: Vadim20  
Дата: 03.04.05 09:28
Оценка:
Есть программный комплекс:
В MFC-шной проге я формирую XML (а данные для этого беру из интерфейса, в
CP1251), затем сохраняю этот XML в базу данных. В ней же читаю XML из базы.
В С#-овской проге XML из базы данных только читаю.
В обоих программах данные после считывания отправляются в интерфейс, т.е.
нужно чтобы они были в CP1251.

Удобно было бы чтобы всё было в CP1251, поскольку как исходные так и
выходные данные должны быть в CP1251. Однако есть проблемы:
1. В C#-овской проге дотнетовский парсер XmlSerializer когда читает XML
скипает русские буквы, даже если в заголовке XML-файла указано
codepage="CP1251"
2. В MFC-шной проге XMLLIB ( и PugXML тоже) структуру файла разбирают
правильно, но строки перекодируют в двухбайтовую кодировку (вероятно UTF-8).
И как из полученной структуры вытащить строку в CP1251 —
непонятно (функция WideCharToMultiByte неправильно перекодирует).

Есть подозрение, что проблему можно решить конвертацией 1251->UTF8 при
сохранении в XML и обратной конвертацией при его считывании, но хотелось бы
этого избежать.
Re: кодировка 1251 HELP!!
От: chabster Украина chabster.blogspot.com
Дата: 04.04.05 08:31
Оценка:
1) new StreamReader("some.xml", Encoding.GetEncoding(1251)) — на вход парсеру.
2) юзай msxml.
"Vadim20" <22524@users.rsdn.ru> wrote in message news:1104765@news.rsdn.ru...
From: Vadim20

Есть программный комплекс:
В MFC-шной проге я формирую XML (а данные для этого беру из интерфейса, в
CP1251), затем сохраняю этот XML в базу данных. В ней же читаю XML из базы.
В С#-овской проге XML из базы данных только читаю.
В обоих программах данные после считывания отправляются в интерфейс, т.е.
нужно чтобы они были в CP1251.

Удобно было бы чтобы всё было в CP1251, поскольку как исходные так и
выходные данные должны быть в CP1251. Однако есть проблемы:
1. В C#-овской проге дотнетовский парсер XmlSerializer когда читает XML
скипает русские буквы, даже если в заголовке XML-файла указано
codepage="CP1251"
2. В MFC-шной проге XMLLIB ( и PugXML тоже) структуру файла разбирают
правильно, но строки перекодируют в двухбайтовую кодировку (вероятно UTF-8).
И как из полученной структуры вытащить строку в CP1251 —
непонятно (функция WideCharToMultiByte неправильно перекодирует).

Есть подозрение, что проблему можно решить конвертацией 1251->UTF8 при
сохранении в XML и обратной конвертацией при его считывании, но хотелось бы
этого избежать.
кодировка 1251 HELP!! Оценить
Posted via RSDN NNTP Server 1.9
Re: кодировка 1251 HELP!!
От: Bron  
Дата: 08.04.05 08:17
Оценка:
Здравствуйте, Vadim20, Вы писали:
V>Удобно было бы чтобы всё было в CP1251, поскольку как исходные так и
V>выходные данные должны быть в CP1251. Однако есть проблемы:
V>1. В C#-овской проге дотнетовский парсер XmlSerializer когда читает XML
V>скипает русские буквы, даже если в заголовке XML-файла указано
V>codepage="CP1251"
укажи не CP1251, а windows-1251 и все будет работать
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.