Aller au contenu
Tous les outils Tarifs Blog

Conversations et messages vocaux

Documents

Audio et vidéo

Connexion

Langue

Traducteur de fichiers de localisation

Traduisez vos fichiers de localisation d'application sans toucher aux clés ni aux variables

Importez vos fichiers JSON, PO, strings.xml, .strings, .xcstrings ou XLIFF, choisissez une langue et récupérez les mêmes fichiers traduits, prêts à être intégrés à votre projet. Les clés, les commentaires, l'ordre et la mise en forme restent exactement tels quels, et chaque variable, comme {name}, {{count}} ou %1$s, est vérifiée dans chaque chaîne. Les premières chaînes sont gratuites et sans inscription ; la tâche entière, jusqu'à 20 fichiers et 5,000 chaînes, coûte $5 en paiement unique, sans abonnement. Un chatbot IA suffit pour une douzaine de chaînes, mais un fichier de plusieurs milliers de clés s'interrompt souvent en cours de route, avec des clés renommées ou des variables modifiées.

Traduire des fichiers de chaînes

Ton
Glossaire et noms à conserver (facultatif)

Noms de marques et de produits, séparés par des virgules. Chacun est vérifié dans chaque traduction.

Un terme par ligne : terme = traduction.

Sans inscription. Jusqu'à 300 chaînes, entièrement gratuit. Au-delà : les premières chaînes sont gratuites, tous les fichiers de la tâche $5, paiement unique.

En continuant, vous acceptez Conditions d'utilisation et Politique de confidentialité.

  • Jusqu'à 300 chaînes gratuites en entier, le début des tâches plus longues est gratuit, sans inscription
  • Tâche entière $5, paiement unique : jusqu'à 20 fichiers et 5,000 chaînes
  • Clés, imbrication, commentaires et ordre conservés ; seules les valeurs sont traduites
  • Variables, pluriels ICU et balises intégrées vérifiés dans chaque chaîne
  • Formes plurielles rédigées pour la langue cible (PO, Android, Xcode)
  • 41 langues, ton formel ou informel, glossaire et noms à conserver
Ouvrir la démo

Voir un exemple de PDF Exemple de résultat

85 chaînes · clés inchangées

{

"home.greeting": "Good morning, {name}Buenos días, {name}",

"home.nearby": "{count, plural, =0 {No trails near you yet} one {# trail near you} other {# trails near you}}{count, plural, =0 {Aún no hay rutas cerca de ti} one {# ruta cerca de ti} other {# rutas cerca de ti}}",

"trail.offline_done": "<b>{name}</b> is saved on this phone. You can use the map without a signal.<b>{name}</b> está guardado en este teléfono. Puedes usar el mapa sin señal.",

"trail.share_text": "I just finished {trail} with Trailbook! {km} km and {meters} m up. 🥾¡Acabo de terminar {trail} con Trailbook! {km} km y {meters} m de subida. 🥾",

"saved.empty": "You have not saved any trails yet.\nTap the heart on a trail to keep it here.Aún no has guardado ninguna ruta.\nToca el corazón en una ruta para guardarla aquí."

}

Jaune: variables et syntaxe de pluriel ICU, vérifiées dans chaque chaîne. Turquoise: balises, séquences d'échappement et emoji, conservés tels quels.

Mêmes clés. Mêmes variables. Nouvelle langue.

Seules les valeurs changent. Le fichier revient avec la même imbrication et le même ordre, sous le nom es.json, et toute chaîne qui perd une variable est redemandée avant de pouvoir atteindre votre build.

Appli de démonstration conçue pour cette page ; les chaînes en espagnol sont le résultat réel de l'outil, à partir d'un fichier de 85 chaînes.

Ce que vous récupérez

Vous récupérez vos fichiers dans le même format, nommés et placés comme l'attend chaque plateforme : en.json devient es.json, strings.xml arrive dans un dossier values-es, Localizable.strings dans es.lproj. Plusieurs fichiers se téléchargent ensemble dans un seul ZIP. Avant de télécharger, chaque chaîne traduite s'affiche à l'écran à côté de sa source, et vous pouvez modifier n'importe laquelle.

  • JSON et ARB : clés imbriquées, tableaux, ordre des clés, indentation et espacement identiques à votre fichier. Les messages ICU comme {count, plural, one {# item} other {# items}} gardent leur structure. Dans les fichiers ARB, les métadonnées « @ » sont conservées et @@locale est renseigné.
  • PO et POT : msgid et msgctxt ne changent jamais ; les entrées vides et fuzzy sont traduites, celles qui ont déjà une traduction sont laissées intactes. Les entrées au pluriel reçoivent autant de msgstr[n] que la langue cible en demande, et l'en-tête reçoit Language et Plural-Forms.
  • strings.xml Android : <string>, <string-array> et <plurals> ; translatable="false" est ignoré ; les apostrophes et les guillemets sont échappés comme Android l'exige ; le contenu de <xliff:g> n'est jamais traduit.
  • iOS et macOS : les fichiers .strings gardent leurs commentaires et leur encodage (souvent UTF-16) ; les String Catalogs .xcstrings reçoivent une nouvelle localisation pour votre langue, avec les variantes de pluriel, et les chaînes déjà traduites sont conservées.
  • XLIFF 1.2 et 2.0 : une balise <target> après chaque <source> non traduite, codes intégrés tels que <g>, <x/>, <ph> et <pc> conservés, et langue cible renseignée dans le fichier.

Traduire des fichiers de chaînes : avec un chatbot IA et avec cet outil

Les assistants IA traduisent bien les textes courts d'interface, et une douzaine de chaînes collées dans une conversation reviennent généralement correctes. Le problème d'un vrai fichier de localisation, c'est sa longueur et sa syntaxe : des milliers de clés, des variables, des règles de pluriel et un échappement qu'un compilateur ou une bibliothèque rejettera au moindre caractère erroné.

Votre situation Un chatbot IA Cet outil
Dix libellés de boutons Les traduit généralement bien Les traduit et vous rend le fichier
Un fichier de 3 000 clés La réponse doit être aussi longue que le fichier : elle s'interrompt donc souvent en cours de route Traduit chaque chaîne par blocs de 60 maximum, jusqu'à 5,000 chaînes par tâche
Clés et imbrication Réécrit tout le fichier : des clés peuvent être traduites, renommées ou supprimées Les clés ne sont jamais envoyées à la traduction ; le fichier est reconstruit à partir du vôtre
Variables comme {name}, %1$s ou :attribute Les conserve en général, mais rien ne le vérifie Vérifie chaque chaîne ; une chaîne qui perd une variable est retraduite, puis conservée dans la langue source et signalée dans une liste
Pluriels en russe, en polonais ou en arabe Recopie souvent les deux formes de l'anglais Écrit toutes les formes plurielles dont la langue cible a besoin, avec des exemples de nombres pour chacune
Apostrophes dans les chaînes Android Peut laisser une apostrophe non échappée qui fait échouer la compilation Échappe les apostrophes et les guillemets comme Android l'exige

Comment traduire un fichier de localisation

  1. 1

    Importez vos fichiers et choisissez une langue

    Déposez un ou plusieurs fichiers du même projet : JSON, ARB, PO ou POT, strings.xml, .strings, .xcstrings ou XLIFF. Choisissez la langue cible et le ton, et indiquez les noms de produits à conserver.

  2. 2

    Vérifiez gratuitement les premières chaînes

    Les premières chaînes s'affichent à l'écran, avec leurs clés à côté du texte source. Modifiez-les directement sur place. Aucun compte n'est nécessaire à cette étape.

  3. 3

    Débloquez et téléchargez

    Les premières chaînes vous conviennent ? Débloquez la tâche entière pour $5, puis téléchargez les fichiers traduits, accompagnés d'une liste d'avertissements si certains points méritent un coup d'œil.

Pourquoi les longs fichiers de chaînes mettent en difficulté les assistants IA généralistes

Un fichier de localisation est autant du code que du texte. Pour le traduire dans une conversation, l'assistant doit réécrire le fichier en entier, avec ses clés, ses accolades et ses échappements, et un fichier de quelques milliers de chaînes dépasse la longueur d'une seule réponse. Il s'interrompt en cours de route ou vous demande de continuer, et c'est à vous de recoller les morceaux.

La syntaxe est le deuxième écueil. Une clé traduite par erreur, un {count} devenu {cuenta}, un %1$s qui a perdu son signe dollar, une apostrophe non échappée dans strings.xml : chacune est une petite modification noyée dans une longue réponse, et chacune peut faire échouer une compilation ou afficher une variable brute à vos utilisateurs.

Cet outil ne demande jamais à un modèle de réécrire votre fichier. Il lit le fichier sous forme de chaînes, n'envoie que le texte, avec la clé et l'éventuel commentaire du développeur comme contexte, par blocs de 60 chaînes maximum, et exige une réponse pour chaque chaîne. Les balises intégrées sont d'abord remplacées par de courts marqueurs. Chaque réponse est vérifiée : mêmes variables, mêmes échappements comme \n, mêmes marqueurs, noms que vous avez indiqués, et toutes les formes plurielles. Une chaîne qui échoue est redemandée ; si elle échoue deux fois, le texte source reste en place et la chaîne vous est signalée dans une liste. Le fichier est ensuite reconstruit à partir de votre original.

Ce que les utilisateurs traduisent

  • Applications React, Vue, Angular et Next.js : fichiers JSON i18next, vue-i18n, react-intl et ngx-translate
  • Applications Flutter : fichiers .arb, avec les descriptions @metadata utilisées comme contexte
  • Plugins et thèmes WordPress, Django et autres projets gettext : modèles .pot et fichiers .po
  • Applications Android : res/values/strings.xml avec tableaux de chaînes et pluriels
  • Applications iOS et macOS : Localizable.strings et String Catalogs (.xcstrings)
  • Fichiers exportés depuis une plateforme de traduction ou depuis Xcode au format XLIFF

Ce que l'outil ne fait pas

Il ne lit pas encore les fichiers YAML, .properties, .resx ou .stringsdict, et il n'ajoute pas les clés de pluriel i18next (key_one, key_few) absentes de votre fichier source : il traduit les clés que vous avez. Dans les fichiers .xcstrings, les chaînes qui utilisent des substitutions ou des variations par appareil sont laissées telles quelles.

Il n'écrase pas les traductions que vous avez déjà : les entrées PO renseignées, les cibles XLIFF marquées comme traduites et les entrées de String Catalog dans votre langue restent inchangées. Un paiement couvre jusqu'à 20 fichiers et 5,000 chaînes ; Illimité couvre jusqu'à 15,000 chaînes par tâche.

Il s'agit d'une traduction automatique assortie de contrôles structurels. Elle convient bien pour publier rapidement une première version d'une langue et pour garder un projet à jour. Pour les fiches de stores, les textes juridiques ou tout contenu portant une voix de marque, faites relire par un locuteur natif.

Pour un bon résultat

Le contexte fait toute la différence entre « Save » le verbe et « Save » la remise. Les clés comme settings.save_button et les commentaires de votre fichier (#. en PO, descriptions @key en ARB, /* commentaires */ en .strings) sont envoyés avec chaque chaîne : un fichier aux clés parlantes et agrémenté de quelques commentaires se traduit donc mieux.

Indiquez les noms de vos applications et produits sous « Ne jamais traduire », et choisissez le tutoiement ou le vouvoiement pour les langues qui font la distinction. Servez-vous des chaînes gratuites comme test, puis consultez la liste des avertissements après le déblocage : chaque entrée indique la clé, le problème et ce que le modèle a renvoyé.

Par langue et par situation

Tarifs

Petites tâches, premières chaînes

Gratuit

Une tâche de 300 chaînes maximum est gratuite en entier, téléchargements compris. Affichée à l'écran, sans inscription. 1 tâche par jour, ou 3 par jour avec un compte gratuit.

Tâche entière

$5

Un seul paiement pour jusqu'à 20 fichiers et 5,000 chaînes. Sans abonnement, sans date d'expiration.

Illimité

$19 / semaine

Tous les outils du site, avec des tâches pouvant aller jusqu'à 15,000 chaînes.

Questions et réponses

ChatGPT peut-il traduire un fichier de localisation JSON ?

Un petit fichier, en général oui. Un fichier de plusieurs milliers de clés doit revenir en une seule réponse : un chatbot IA a donc tendance à s'interrompre en cours de route, et rien ne vérifie que chaque clé et chaque placeholder ont survécu. Cet outil traduit les valeurs par blocs, vérifie chaque placeholder et reconstruit le fichier à partir du vôtre.

Quels formats sont pris en charge ?

JSON (i18next, vue-i18n, react-intl, ngx-translate et similaires), ARB de Flutter, gettext PO et POT, strings.xml Android, .strings et .xcstrings iOS et macOS, ainsi que XLIFF 1.2 et 2.0. Les fichiers peuvent peser jusqu'à 10 Mo chacun, avec jusqu'à 20 fichiers par tâche.

Les clés et les placeholders sont-ils conservés ?

Les clés ne sont jamais envoyées à la traduction. Les placeholders tels que {name}, {{count}}, %s, %1$d, %@, :attribute et %{name}, les séquences d'échappement comme \n, les balises en ligne et les emoji sont vérifiés dans chaque chaîne. Une chaîne qui en perd un est retraduite ; si elle échoue encore, le texte source est conservé et la chaîne apparaît dans la liste des avertissements.

Comment les pluriels sont-ils gérés ?

Les messages ICU conservent leur structure et reçoivent les catégories de pluriel de la langue cible. Les entrées PO avec msgid_plural obtiennent autant de formes msgstr[n] que la langue cible en requiert, et l'en-tête reçoit le Plural-Forms correspondant. Les <plurals> Android et les variations de pluriel Xcode sont écrits avec les catégories de la langue cible, par exemple one, few, many et other pour le russe.

Que deviennent les chaînes déjà traduites ?

Elles sont conservées. Seules les entrées PO vides ou fuzzy, les unités XLIFF sans cible terminée et les entrées de String Catalog sans votre langue sont traduites. En JSON, .strings et strings.xml, chaque valeur est traitée comme du texte source.

Dans quelles langues peut-il traduire ?

41 langues, dont l'espagnol, le français, l'allemand, l'italien, le portugais (Brésil et Portugal), le néerlandais, le polonais, le russe, l'ukrainien, le turc, l'arabe, l'hébreu, l'hindi, l'indonésien, le vietnamien, le thaï, le japonais, le coréen et le chinois (simplifié et traditionnel).

Est-ce gratuit ?

Les premières chaînes de chaque tâche sont traduites gratuitement et affichées à l'écran, sans inscription. La tâche entière, avec les téléchargements, coûte $5, en paiement unique. Illimité, à $19 par semaine, couvre tous les outils du site. Les petites tâches font exception : une tâche de 300 chaînes maximum est entièrement gratuite, téléchargements inclus.

Mes fichiers restent-ils confidentiels ?

Vous seul pouvez ouvrir votre tâche. Les chaînes sont envoyées à un fournisseur de modèles d'IA dans le seul but de les traduire, par des voies qui n'utilisent pas vos données pour l'entraînement. Les tâches importées sans compte sont supprimées après 7 jours, et vous pouvez supprimer vous-même n'importe quelle tâche à tout moment.

Mis à jour le 23 octobre 2026 · APPFACT STUDIO LTD

Autres tâches possibles

Nous utilisons des cookies de mesure d'audience pour savoir quelles pages sont utiles. Êtes-vous d'accord ?