Lingohub

CEO and founder of Lingohub. Envisioning a multilingual digital world. Email me if you have questions about how Lingohub can help you take your products global.

Helmut Development 1 Comment

SHARE

i18n Resource File Formats: RESX and RESW files

Next up in our blog series on localization resource file formats are Windows-related formats. RESX files are used by programs developed with Microsoft’s .NET Framework. They store objects and strings for a program in an XML format. They may contain both plain text information as well as binary data, which is encoded as text within the XML tags.

RESW files are used by Microsoft Windows and Silverlight applications and contain strings that are used to localize the application for different languages and contexts. They are often used with XAML applications (such as Expression), which abstract the user interface strings to resource files. Let’s have a closer look at how these files look like in terms of formatting:

Syntax of the RESW and RESX resource file format:

  • documents start with <?xml version=”1.0″ encoding=”ENCODING”?> where ENCODING is desired encoding
  • key-value pairs are nested within a <root> element and have this form:

<data name=”key” xml:space=”preserve”><value>value</value></data>

  • place-holder syntax is: {name}, where “name” can be a combination of non-white-space characters
  • HTML comments preceding a key-value pair are treated as a translation descriptions belonging to that pair, and can contain LingoChecks
  • we use UTF-8 encoding for RESJSON resource files exports by default, but we also support other encodings our users might prefer.

Example of the RESX/RESW resource file format:

[gist: id=5344285]

Thanks for reading. Let us know if  you have questions on using RESW or RESX resource files for your localization projects. We also support newer files for Microsoft-related projects, such as Windows 8 or RT, see blog entry. Our series on localization file formats will be continued. We’ve previously covered .ini , .strings and .properties files, for example. I am looking forward to your comments.