Эффективный и простой способ хранения многострочных строк текста? - PullRequest
0 голосов
/ 31 декабря 2011

Я пытаюсь найти способ сделать это.

Моя игра многоязычная.У меня есть English.txt, French.txt и т. Д.

Мне интересно, как можно было бы сохранить его в файле, например:

<sendbutton.tooltip>
Use this button to send text.

The text can be as long as you like!
</sendbutton.tooltip>

или

sendbutton.tooltip = Use this button to send text.\n\nThe text can be as long as you like!

Затем я сопоставлю эти строки с именем их элемента для использования во время выполнения.

Что обычно делается для этого, кроме использования стандарта, такого как XML?

Спасибо

Ответы [ 3 ]

1 голос
/ 31 декабря 2011

Зависит от того, когда вы собираетесь загрузить файл.

Для стандартного перевода, я рекомендую вам взглянуть на gettext.Он предоставляет инструменты для перевода и простой способ включить его.Вы можете хранить текст на английском языке в виде строк C, заключенных в макрос перевода () или T () или что-то еще, и gettext предоставит вам строки, которые нужно перевести.Он также отслеживает переводы, которые необходимо обновить при изменении оригинального текста на английском языке.Все переводы для конкретного языка хранятся в отдельных файлах.

1 голос
/ 31 декабря 2011

Обычно такого рода задачи локализации выполняются с помощью GNU gettext .

0 голосов
/ 31 декабря 2011

Не уверен для C ++, но, возможно, файлы ресурсов, где вы создаете отдельный файл для каждого языка и имеете пары ключ / значение для поиска с каждым языком, используя тот же ключ, но текст сообщения на правильном языке, например

resources.de
  LOGOUT, Abmelden

resources.en
  LOGOUT, Logout

затем, в зависимости от выбора языка пользователя, вы загружаете соответствующий файл ресурсов для отображения правильного текста. Думаю, вы просто сохраните мутлины с / n, как во втором примере.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...