Downloading and uploading translations

You can export files from a translation, make changes, and import them again. This allows working offline, and then merging changes back into the existing translation. This works even if it has been changed in the meantime.


Available options might be limited by access control settings.

Downloading translations

From the project or component dashboard, translatable files can be downloaded in the Files menu.

The first option is to download the file in the original format as it is stored in the repository. In this case, any pending changes in the translation are getting committed and the up-to-date file is yield without any conversions.

You can also download the translation converted into one of the widely used localization formats. The converted files will be enriched with data provided in Weblate; such as additional context, comments or flags. Several file formats are available via the FilesCustomize download menu:

  • gettext PO

  • 带有 gettext 扩展的 XLIFF

  • XLIFF 1.1

  • TermBase eXchange

  • 翻译记忆库交换

  • gettext MO (only available when translation is using gettext PO)

  • CSV

  • Excel Open XML

  • JSON(仅对单语翻译可用)

  • Android 字符串资源(仅对单语翻译可用)

  • iOS 字符串(仅对单语翻译可用)


The content available in the converted files differs based on file format features, you can find overview in 翻译类型功能.


Uploading translations

When you have made your changes, use Upload translation in the Files menu.



Any file in a supported file format can be uploaded, but it is still recommended to use the same file format as the one used for translation, otherwise some features might not be translated properly.


These are the choices presented when uploading translation files:


Imported strings are added as translations to existing strings. This is the most common usecase, and the default behavior.

Only translations are used from the uploaded file and no additional content.


Imported strings are added as suggestions, do this when you want to have your uploaded strings reviewed.

Only translations are used from the uploaded file and no additional content.


Imported strings are added as translations needing edit. This can be useful when you want translations to be used, but also reviewed.

Only translations are used from the uploaded file and no additional content.


Existing file is replaced with new content. This can lead to loss of existing translations, use with caution.


Updates source strings in bilingual translation file. This is similar to what 更新 PO 文件以匹配 POT 文件 (msgmerge) does.



Adds new strings to the translation. It skips the one which already exist.

In case you want to both add new strings and update existing translations, upload the file second time with Add as translation.

This option is available only with 管理字符串 turned on.


Conflicts handling

Defines how to deal with uploaded strings which are already translated.

Strings needing edit

There is also an option for how to handle strings needing edit in the imported file. Such strings can be handle in one of the three following ways: “Do not import”, “Import as string needing edit”, or “Import as translated”.

Overriding authorship

With admin permissions, you can also specify authorship of uploaded file. This can be useful in case you’ve received the file in another way and want to merge it into existing translations while properly crediting the actual author.