![]() |
|
Модераторы: Partizan, gambit |
![]()
|
|
| iddqd |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 491 Регистрация: 16.11.2005 Репутация: 2 Всего: 2 |
Необходимо реализовать программу на нескольких языках, при этом, чтоб файлы локализации хранились в XML в легко достпуном для реадктирования виде и чтоб любой человек мог перевести на свой язык.
Как это реализовывается в C#? И как быть с переводом строковых литералов? -------------------- |
|||
|
||||
| tol05 |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 1632 Регистрация: 21.12.2006 Где: Харьков Репутация: 63 Всего: 170 |
1. System.Resources Namespace (ResourceManager, ResXResourceWriter, ResXResourceReader).
2. Утилита Resgen.exe Вообще об этом неплохо написано в "C#2005 для профессионалов" -------------------- На хорошей работе и сны хорошие снятся. |
|||
|
||||
| iddqd |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 491 Регистрация: 16.11.2005 Репутация: 2 Всего: 2 |
К сожалению, по двум строчкам мне сложно понять весь механизм работы и реализацию.
А вот книгой этой к сожалению не распологаю. Но на озоне заказали, счет сегодня подпишут -------------------- |
|||
|
||||
| _Dream |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 133 Регистрация: 4.11.2006 Где: Там Репутация: нет Всего: нет |
так студия сама же все делает(когда форму локализуешь)
--------------------
Noone dies a virgin. Life screws us all... |
|||
|
||||
| iddqd |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 491 Регистрация: 16.11.2005 Репутация: 2 Всего: 2 |
Я же сказал, мне файлы языков надо хранить в XML.
И чтоб: а) пользователь мог свободно добавить свой язык б) там можно было хранить строковые литералы -------------------- |
|||
|
||||
| _Dream |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 133 Регистрация: 4.11.2006 Где: Там Репутация: нет Всего: нет |
а они где хранятся ? resx ресурсы и отлдичаются тем что там структура xml документа- ключ-значение --------------------
Noone dies a virgin. Life screws us all... |
|||
|
||||
| iddqd |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 491 Регистрация: 16.11.2005 Репутация: 2 Всего: 2 |
Можно подробней про саму реализаию, теория тут не интересна.
Как это сделать? -------------------- |
|||
|
||||
| tol05 |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 1632 Регистрация: 21.12.2006 Где: Харьков Репутация: 63 Всего: 170 |
Вот сделал архив с sources к учебнику. Лови.
Присоединённый файл ( Кол-во скачиваний: 25 )
Chapter17.zip 90,38 Kb-------------------- На хорошей работе и сны хорошие снятся. |
|||
|
||||
| iddqd |
|
||||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 491 Регистрация: 16.11.2005 Репутация: 2 Всего: 2 |
Спасибо. Посмотрел исходники. Пока не очень понятно.
Тут есть как раз статья из озвученной книги: http://www.rsdn.ru/article/dotnet/csprof20...ocalization.xml Множество вопросов осталось: а) как быть со строковыми литералами, т.е.:
б) автоматическое нахождение всех файлов языка, которые добавил пользователь. в) сам формат XMl файла. г) перевод аттрибутов. т.е.:
Тоже должно переводиться. Может кто-нибудь сделать приложение, где будет одна кнопка и список всех доступных файлов языка, при выборе файла и нажатию кнопки происходит перевод. И чтоб использовался строковый литерал. Пожалуйста. Буду очень признателен и сразу все вопросы будут исчерпаны. -------------------- |
||||
|
|||||
| iddqd |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 491 Регистрация: 16.11.2005 Репутация: 2 Всего: 2 |
Как я уже говорил - пользователь должен легко взять и перевести программу сам. Разве неподготовленный пользователь сможет такой ужас перевести?
-------------------- |
|||
|
||||
| _Dream |
|
||||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 133 Регистрация: 4.11.2006 Где: Там Репутация: нет Всего: нет |
ну если проблема только в этом то
как ты знаешь все что тебе надо хранится в паре name-value
и! только это необходимо перевести.. если пугают ResXResourceReader'ы со встроенными методами можеь просто парсить документ и выдирать оттуда эти пары(ну и записывать куда-то) а потом передать неподготовленному пользователю тут и тут глянь
разве ж так можно? то есть студия тебе сама будет переводить? Это сообщение отредактировал(а) _Dream - 20.4.2007, 14:12 --------------------
Noone dies a virgin. Life screws us all... |
||||
|
|||||
![]()
|
| Прежде чем создать тему, посмотрите сюда: | |
|
|
Используйте теги [code=csharp][/code] для подсветки кода. Используйтe чекбокс "транслит" если у Вас нет русских шрифтов. Что делать если Вам помогли, но отблагодарить помощника плюсом в репутацию Вы не можете(не хватает сообщений)? Пишите сюда, или отправляйте репорт. Поставим :) Так же не забывайте отмечать свой вопрос решенным, если он таковым является :) Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, mr.DUDA, THandle. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Общие вопросы по .NET и C# | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |