views:

153

answers:

3

I am thinking about my final year project and the possibility of supporting multiple languages, e.g. English, Welsh, German etc..

Is there a standard way of supporting multiple human languages in a program?
What is the recommended file format for storing the different languages?

It is something I am clueless on but is obviously a very common feature, So any advice is welcomed.

I am most familiar with c++ using mfc for UI applications, currently learning Qt. So an answer with this bias in mind would be good.

(Sorry if this has been covered before, but searching for 'Languages' on SO returns streams of programming language related questions)

+4  A: 

If you wanted to browse on StackOverflow for ideas you could try the internationalization, i18n, localization and l10n tags.

("i18n" == "internationalisation" because "nternationalizatio" is 18 letters. Same for localization and l10n.)

Dave Webb
And `l10n` for `localization`
Amarghosh
Thanks, have added it although not too many questions there.
Dave Webb
+1  A: 

Apart from the already made suggestions of internationalization and localization, another term you might want to research is "Unicode".

Mark Byers
+3  A: 

As for MFC you could use resource DLLs as described here. One of portable solutions will be using gettext library.

Kirill V. Lyadvinsky
Your "here" link is probably messed up.
stefaanv
Link fixed [15chs]
Kirill V. Lyadvinsky
For embedded software, gettext is indeed the way to go. However, the real challenge is the translations themselves: having a way to notify the translators that a new string has arrived, merging them etc... gettext and the GUIs that have been developed over it all help but it's still messy :/
Matthieu M.