JSON ファイルの翻訳方法:アップロードから言語ごとの1つの有効なファイルまで

SmartcatでJSONファイルの翻訳:アップロードし、AIを使用してその値のみを280以上の言語へ自動翻訳し、文脈に合わせて各文字列をレビューし、言語ごとに有効なファイルを1つダウンロードします。Smartcatは開発者やプロダクトチーム向けのJSONファイル翻訳ツールであるため、キー、ネスト化、i18nプレースホルダー、複数形はコードが想定する通りの位置に保持されます。

あらゆるファイルを翻訳。数秒で。
画像、ドキュメント、動画、音声、コース — 形式を選んでファイルをドロップしてください。
ここにドキュメントをドロップ
または ファイルを参照 · .docx, .pdf, .pptx, .xlsx などに対応
翻訳元
翻訳先

翻訳

世界最大級の企業80社以上がSmartcatを選んでいます

JSON ファイルの翻訳には何が含まれますか?

JSONファイルの翻訳とは、キー、ネスト化、プレースホルダーを変更せずにそのまま保持しながら、各キーと値のペアにおけるテキスト値を翻訳することを意味します。これにより、翻訳されたファイルは引き続き解析可能であり、アプリはすべての文字列を検出することができます。

Smartcat などの JSON ファイル翻訳ツールは、ファイルの構造を読み取り、翻訳者には値のみを表示し、{名前} や {{count}} のような変数をロックして、各翻訳を元の構造のコピーへ書き戻し、ターゲット言語ごとに1つの i18n JSON ファイルを作成します。以下のJSONの翻訳ファイルの例は、同じファイルの前後を示しています。

92%

編集されずに承認された機械翻訳のワードの

Smartcat AIによって翻訳された単語の92%が、人による修正を一切受けることなく承認されています。

280+

言語

1つのJSONファイルを280以上の言語のいずれかに翻訳し、必要なときにはいつでも新しい言語を追加できます。

80+

ファイル形式

80種類以上のファイル形式を翻訳できるため、JSON、YAML、XML、RESX、そしてXLIFFファイルで1つの用語集を共有できます。

出典ファイル例: en.json

{
  "checkout": {
    "title": "Checkout",
    "items": "You have {{count}} items in your cart",
    "greeting": "Welcome back, {name}!"
  }
}

翻訳されたファイル: de.json

{
  "checkout": {
    "title": "Kasse",
    "items": "Sie haben {{count}} Artikel im Warenkorb",
    "greeting": "Willkommen zurück, {name}!"
  }
}
  • キーとネスト化:ロック済み、翻訳不可
  • 値:翻訳およびレビュー済み
  • プレースホルダー:翻訳の中に閉じ込められている

なぜJSONを翻訳者にコピー&ペーストすると壊れてしまうのですか?

JSONを一般的な翻訳ツールやAIチャットツールにコピー&ペーストすると、そのツールがキー、見積もり、プレースホルダーを翻訳対象のテキストとして扱うため、ファイルが破損します。JSON ファイル翻訳ツールは、何かが翻訳される前にコードから値を分離します。何がうまくいかないのか、そして何が変更されるのかをここに示します。

翻訳者へコピー&ペーストする

翻訳されたキー失われたプレースホルダー壊れた構文

JSON ファイルの翻訳者

値のみプレースホルダーがロックされました言語ごとに1つのファイル

ファイル全体を貼り付けてください

一般的な翻訳ツールはキー、中括弧、値を1つのテキストとして認識するため、「title」のようなキーが「título」として戻る可能性があり、コードがその文字列を見つけられなくなります。

ファイルをそのままアップロードしてください

SmartcatはJSON構造を読み取り、翻訳者には値のみを表示します。キーおよびネスト化は、翻訳の対象として提供されることはありません。

プレースホルダーが翻訳される

{name}が{nombre}に変わってしまったり、{{count}}の中にスペースが入ってしまったりして、実行時に文字列のエラーが発生します。

プレースホルダーはロックされたままになります

{name} や {{count}} などの変数は各文字列内で保護されているため、翻訳者はそれらを移動することはできますが、変更することはできません。

見積もりとカンマが壊れる

エスケープされていない見積もりが1つあるか、カンマが1つ抜けているだけで、ファイルは解析を停止します。ビルドが失敗したときにそれが分かります。

その構造は無傷で戻る

Smartcatは翻訳を元の構造のコピーに書き込み、言語ごとに1つのファイルを作成して、コミットできる状態にします。

更新のたびに最初からやり直しになる

次へのスプリントでファイル全体を再度貼り付け、一切変更がなかった文字列を再翻訳するために費用を支払うことになります。

変更のみが翻訳されます

翻訳メモリがお客様の承認済みのすべての文字列を埋めるため、新規および変更された文字列のみが翻訳され、請求されます。

どのようなi18n JSON 構造をお持ちですか?

i18n JSON ファイルを翻訳するには、まずそれらがどのように文字列を格納しているかを確認してください。一般的な方法として、フラットなキー・値のペア、ネスト化されたオブジェクト、i18next名前空間ファイル、ICU MessageFormatメッセージの4つがあります。Smartcatはこれら4つすべての値を翻訳し、キー、ネスト化、プレースホルダーを保持します。表には、それぞれについて確認すべき項目が示されています。

構造それがどのように見えるかSmartcatがそれをどのように処理するか確認事項
フラットなキー・値"checkout.title": "Checkout"各値は1つのセグメントになり、キーはそのIDとして翻訳者に表示されます。フラットなJSONとして戻るようにエクスポートします。ここでのキーに含まれるドットはその名前の一部であるため、エクスポートはフラットな状態を維持してください。
ネスト化されたオブジェクト{"checkout": {"title": "Checkout"}}パス区切り文字を使用して、構造化されたJSONとしてインポートします。Smartcatは翻訳用にキーをフラット化し、エクスポート時に同じネスト構造を再構築します。インポートとエクスポートには同じパス区切り文字を使用してください。
i18next 名前空間common.json · "items": "{{count}} items"各名前空間ファイルをインポートするか、名前空間ごとに1つのコレクションをインポートします。{{count}} やその他の補間変数は、すべての値で固定されたままになります。複数形の種類が多い言語では、ポーランド語における _few や _many のように、追加の接尾辞キーが必要になる場合があります。
ICU MessageFormat{count, plural, one {# file} other {# files}}複数形はエディター内でネイティブの複数形セグメントになるか、ICU 構文のまま維持されます。LocJSON のインポートでは、ICU のプレビュー機能とバリデーターを使用して選択することができます。エクスポートは、複数形をICU互換の文字列として書き戻します。複数メッセージがサポートされているケースです。まずサンプルファイルで他のICU引数タイプをテストしてください。

どれをお持ちかわかりませんか?リリース全体を翻訳する前に、無料トライアルでサンプルファイルをアップロードし、エクスポートを確認してください。

5つのステップでJSONファイルの翻訳を行う方法

SmartcatでJSONファイルの翻訳を行うには、ファイルをアップロードし、その値をAIで自動翻訳し、JSON翻訳ファイルエディターで各文字列をレビューし、品質チェックを実行して、言語ごとに有効なファイルを1つエクスポートします。キー、ネスト化、およびプレースホルダーは、すべてのステップを通じてロックされたままになります。

  1. JSONファイルをアップロードしてください

    .jsonファイルをSmartcatプロジェクトにアップロードするか、ソフトウェアローカリゼーションプロジェクトを作成してUI、REST API、またはCLIからインポートします。

    CLI を使用して JSON ファイルからキーをインポートする Smartcat
  2. AIで値を自動翻訳する

    ターゲット言語を選択してください。Content Translator Coworkerは、キーとプレースホルダーをロックしたまま、お客様の用語集と翻訳メモリを使用してすべての値を翻訳します。

    Smartcat すべてのワードにおいて機械翻訳が完了したことを示すプロジェクトの進捗状況
  3. JSON 翻訳ファイルエディターでレビュー

    貴社のレビュー担当者、またはSmartcat Marketplaceの言語専門家は、キーIDやコメント、横に添付されたスクリーンショットとともに、ブラウザ上で各文字列を編集します。

    Smartcat Editor内の翻訳メモリ一致スコア付きの翻訳済み文字列
  4. エクスポート前に品質チェックを実行してください

    エクスポートを実行する前に、用語、整合性、翻訳の欠落に関する言語の品質チェックを実施し、キーIDおよびコメントと照らし合わせて各文字列を確認してください。

    翻訳された文字列の横に、セグメントおよび文書コメントタブが開かれた状態のSmartcat Editor
  5. 言語ごとに1つのファイルをエクスポート

    すべての言語向けに、フラットまたはネスト化された、strings-{LANGUAGE}.jsonのようなテンプレートによって名前が付けられた有効なJSONをダウンロードするか、CI/CDパイプライン内のCLIを使用してファイルをプルします。

    Smartcat ソフトウェアローカリゼーションプロジェクト内のインポートおよびエクスポートボタン

ご自身のJSONファイルの一つで、これら5つのステップを試してみてください

開発者向けの自動JSONファイル翻訳ツール

Smartcatは、開発者やプロダクトチーム向けにJSONファイルの翻訳を自動化します。UI、REST API、またはCLIを通じてJSONをインポートし、AIで値を自動翻訳し、翻訳者に各キーの文脈を提供し、品質チェックを実行して言語ごとに1つのファイルを書き出す、これらすべてを1つの共有プロジェクト内で行うことができます。

すべてのキーをそのまま保持して翻訳された、ご自身のJSONファイルをご確認ください

大規模な、ネスト化された、バッチのJSONファイルの翻訳

Smartcatで大規模な、ネスト化された、またはバッチのJSONファイルを翻訳するには、大きなロケールファイルをコレクションに分割し、パス区切り文字を使用してネスト化されたJSONをインポートし、1つの用語集と翻訳メモリを使用して1つのプロジェクトに多数のファイルをアップロードします。製品全体のJSONローカリゼーションについては、JSON翻訳ツールおよびソフトウェアローカリゼーションプラットフォームを参照してください。

大きなJSONファイルを翻訳する方法

大きなロケールファイルは、分割した方が翻訳や追跡が容易になります。

大きなファイルをコレクションに分割する

ソフトウェアローカリゼーションプロジェクトには複数のコレクションが含まれているため、機能や名前空間ごとに大規模なロケールファイルをインポートし、それぞれの進捗状況を追跡できます。

名前空間ごとに1つのコレクション

common.jsoncheckout.jsonsettings.json

変更された部分のみを翻訳してください

更新されたファイルを再インポートすると、翻訳メモリが承認済みのすべての文字列を入力します。新規の文字列および変更された文字列のみが翻訳に送られ、請求されます。

  1. 再インポート更新されたファイル
  2. メモリ一致承認済みの文字列が入力されました
  3. 翻訳新規および変更された文字列のみ

ネスト化されたJSONファイルを翻訳する方法

インポートとエクスポートで同じルールを使用する場合、ネスト構造はラウンドトリップ後も維持されます。

パス区切り記号を使用してネスト化を維持する

ネスト化されたJSONを、パス区切り記号を含む構造化されたJSONとしてインポートします。Smartcatは翻訳のためにキーをフラット化し、エクスポート時に同じネスト構造を再構築します。

  • checkoutpaymenttitle
    キーcheckout.payment.titleとして翻訳され、3つのネスト化されたオブジェクトとして戻る形でエクスポートされます。

フラットまたは構造化してエクスポート

お使いのi18nライブラリが読み込む形式に応じて、JSONまたはYAMLをフラットなキー・値のペア、あるいはネスト化ファイルとしてエクスポートします。

平らな
"checkout.title": "お会計"
構造化された
{"checkout": {"title": "お会計"}}

JSONファイルを一括で翻訳する方法

ロケールファイルの一式を、手動またはパイプラインから一度に翻訳します。

1つのプロジェクト内の多数のファイル

複数のJSONファイル、またはそれらをまとめたZIPパッケージを1つのプロジェクトにアップロードし、1つの用語集と1つの翻訳メモリを使用して、すべてのターゲット言語へ一度に翻訳します。

  • すべてのファイルに1つの用語集
  • リリースをまたいで利用できる1つの翻訳メモリ
  • いつでも追加できるターゲット言語

CI/CDで自動化する

Smartcat CLIまたはREST APIを使用して出典文字列をプッシュし、翻訳をプルするか、GitHub、GitLab、またはBitbucketのリポジトリを接続して、手動でエクスポートすることなくファイルを移動します。

どのAI同僚があなたのJSONファイルを翻訳し、チェックしていますか?

各同僚が初稿から最終確認に至るまで、JSONファイルの翻訳の1つの工程を担当します。エクスポートする前に、レビュー担当者がすべての言語を承認します。

JSON ローカリゼーションの統合:Git、CLI、API、Figma、およびCMS

手作業でファイルをエクスポートすることなく、Smartcat、リポジトリ、デザインファイル、コンテンツシステム間で文字列を移動できます。すべての統合を見る

JSONのローカリゼーション結果(KaseyaおよびHuelより)

Kaseyaの開発者とHuelのローカリゼーションチームは、ファイルをメールで送信する代わりに、ツールとSmartcatの間で文字列を移動させます。以下の各数値は、彼らが公表したケーススタディに基づいています。

70%

ローカライズコストの削減

Kaseyaはローカリゼーションコストを70%削減し、その保存分を8言語以上の追加に再投資しました。

10+

毎回のローンチ時における言語

Kaseyaは現在、開発中にUIの文字列を同期するGitHub統合により、製品アップデートを10以上の言語で世界中に展開しています。

21

年間に数週間分もの手作業が削除された

Huelは、CMS、CRM、およびFigmaをSmartcatに接続することで、年間21週間分の手作業(ほぼ0.5人分のFTEに相当)を削減しました。

50%

代理店と比較したコスト節約

「Smartcatは私たちにとって単なる翻訳ツールにとどまらず、当社の技術スタックと統合されています。」

Huelは、Smartcatの統合を通じて自社のウェブサイト、メールキャンペーン、およびFigmaのクリエイティブを9つの言語にローカライズしており、代理店と比較して全体で約50%のコスト節約になったとレポートしています。

Huelのケーススタディを読む
Magdalena Tumulka
Magdalena Tumulkaローカリゼーションリード、Huel

すべての言語でJSONファイルがどのように表示されるか確認しましょう

プロダクトチームおよびローカリゼーションチームがG2について語ること

開発者がJSONファイルをSmartcatに移行する前に尋ねる質問

開発者がまず尋ねる質問への率直な回答と、信頼して使用する前にテストすべき1つの項目について。

「私の鍵に触れますか?」

いいえ。Smartcatは値のみを翻訳します。キーとネスト化された構造はアップロードしたとおりそのまま戻るため、翻訳されたファイルはリポジトリ内の同じ場所にそのまま配置されます。

「私たちはすでにスクリプトから機械翻訳APIへ文字列を送信しています。」

下書きとして機能するのであれば、そのスクリプトを使い続けてください。Smartcatは、文脈でのレビュー、用語集、リリースをまたぐ翻訳メモリ、品質チェックといった不足しているものを追加し、変更された文字列のみが請求されます。

「私たちのレビュー担当者は開発者ではありません」

彼らは決してJSONを開けない。彼らはブラウザーのエディターで文をレビューし、各文字列の横にあるキーID、コメント、スクリーンショットを確認した上で、エクスポート前に各言語を承認します。

「私たちの文字列はICU個の複数形メッセージを使用しています。」

サポートされています。複数形はネイティブの複数形セグメントとしてインポートされるか、ICU構文のまま維持され、エクスポート時にはICU互換の文字列として書き戻されます。メッセージで他のICU引数タイプを使用している場合は、リリース前にトライアルでサンプルファイルをアップロードし、エクスポートを確認してください。

Smartcat内のJSONファイルは安全ですか?

ロケールファイルには、未公開の機能や製品の名前が含まれていることがよくあります。Smartcatはあらゆる段階でそのコンテンツを保護します。詳細はSmartcatのセキュリティページをご覧ください。

ロールベースのアクセス制御

エンタープライズプランでは、チーム、役割、または地域ごとに、誰が文字列の表示、翻訳、レビュー、および承認を行えるかを設定できます。

シングルサインオン(SSO)

エンタープライズプランでは、既存のIDプロバイダーを通じてサインインできます。

SOC 2 Type II準拠

SmartcatはSOC 2 Type IIに準拠しており、すべてのワークスペースを分離しています。

公開AIモデルのトレーニングに使用されることは一切ありません

お客様の文字列や出典ファイルが、公開AIモデルのトレーニングに使用されることは決してありません。

監査証跡

エンタープライズプランでは、翻訳およびレビュー全体で、誰が、何を、いつ変更したかを確認できます。

要求に応じた暗号化および削除

コンテンツは転送中および保存時に暗号化され、書面による要求から30日以内に削除または返却されます。

JSON ファイル翻訳用のリソース

i18n、ソフトウェアローカリゼーションプロジェクト、およびデザインからコードへの文字列の移行に関する背景。

JSON ファイル翻訳のよくある質問

JSON ファイルの翻訳方法を教えてください。

JSONファイルをSmartcatにアップロードし、ターゲット言語を選択すれば、キーとプレースホルダーは固定されたまま、機械翻訳が値を翻訳します。文脈に合わせて各文字列をレビューし、品質チェックを実行してから、言語ごとに有効なJSONファイルを1つエクスポートしてください。開発者は、Smartcat、REST API、またはCLIを通じて同じことを行うことができます。まずオンラインで単一のファイルをテストするには、無料のJSON翻訳ツールをお試しください。

AIでJSONファイルを自動翻訳できますか?

はい。Smartcatは、キーとプレースホルダーをロックしたまま、お客様の用語集と翻訳メモリを使用して、JSONファイル内のすべての値をAIで自動翻訳します。SmartcatのAIによって翻訳されたワードの92%は、一度も人間による編集が行われることなく承認されており、各言語をエクスポートする前に、お客様のレビュー担当者が残りの部分をJSON翻訳ファイルエディターでチェックします。

i18n JSON ファイルを翻訳するにはどうすればよいですか?

i18n JSON ファイルを Smartcat にアップロードするか、フラットまたは構造化された JSON としてソフトウェアローカリゼーションプロジェクトにインポートします。Smartcat は、キー、ネスト化、{{count}} などの補間変数をロックしたまま、値を各ターゲット言語に翻訳し、i18n ライブラリ向けに言語ごとに1つのロケールファイル(de.json や fr.json など)をエクスポートします。

JSONファイルの翻訳に最適な方法は何ですか?

Smartcatは、リリースごとにJSONファイルを翻訳するプロダクトチームに適していますが、最適な方法はファイルおよびその変更頻度によって異なります。どのツールをテストする場合でも、値のみを翻訳すること、プレースホルダーをロックすること、ネスト化を維持すること、レビュー担当者がキーIDと文脈を確認できること、承認された文字列を再利用すること、そして言語ごとに有効なファイルを1つエクスポートすることを確認してください。

JSONファイルの翻訳にはどれくらいの時間がかかりますか?

それはファイルのサイズ、言語数、および追加するレビューの量によって異なるため、Smartcatはすべてのファイルに対して一律の納期を保証するものではありません。まずAIが値を翻訳し、所要時間の大半はご自身が管理するレビューと承認に費やされます。更新されたファイルを再インポートすると、承認済みの文字列は翻訳メモリから入力されるため、新規および変更された文字列のみ作業が必要になります。

一般的な機械翻訳者やAIチャットツールでJSONファイルの翻訳ができますか?

いいえ、安全にはできません。一般的な機械翻訳者やAIチャットツールはファイルをプレーンテキストとして扱うため、キーを翻訳してしまったり、プレースホルダーを変更したり、見積もりやカンマを破損させたりする可能性があります。Smartcatは最初にJSONを解析するため、値のみが翻訳に送られ、言語ごとに元の構造へとそれらを書き戻します。

JSONファイル翻訳ツールとは何ですか?

Smartcat などの JSON ファイル翻訳ツールは、JSON ファイルを解析し、翻訳可能な値をキーや構文から分離して、それらの値を翻訳し、各ターゲット言語用の有効なファイルを再構築するソフトウェアです。優れたものはまた、プレースホルダーを固定し、翻訳者に文脈を示し、ファイルに変更があった際には承認済みの翻訳を再利用します。

JSON 翻訳ファイルエディターとは何ですか?

Smartcat EditorのようなJSON翻訳ファイルエディターは、JSONファイルに含まれる値を各キーIDの横に文として表示するため、翻訳者やレビューアーはキーや構文に手を加えることなくテキストを編集できます。Smartcatは用語集や翻訳メモリの候補、品質チェック、言語ごとの承認を追加し、各言語に対応した有効なJSONファイルをエクスポートします。

Smartcatはネスト化されたJSONファイルを翻訳できますか?

はい。Smartcatはネスト化されたJSONをパス区切り文字付きの構造化JSONとしてインポートします。翻訳のためにネスト化されたキーをフラット化し、エクスポート時に同じネスト構造を再構築します。インポートとエクスポートで同じパス区切り文字を使用してください。お使いのi18nライブラリがフラットなキー・値のペアを必要としている場合は、結果をその形式でエクスポートすることもできます。

Smartcatは、{名前}や{{count}}のようなプレースホルダーをどのように処理しますか?

Smartcatは各文字列内のプレースホルダーをロックするため、翻訳者はターゲットの文法が必要とする場所に{名前}や{{count}}などの変数を移動できますが、変更や削除を行うことはできません。翻訳された値には、その出典と同じプレースホルダーが含まれており、アプリは従来どおり実行時にそれらを補完します。

SmartcatはJSONファイル内のi18nextおよびICUの複数形をサポートしていますか?

はい。Smartcatは補間変数を含むi18next JSONファイルを翻訳し、ネイティブの複数形セグメントまたはICU MessageFormat構文で複数形を処理します。また、LocJSON用のICUプレビューアーとバリデーターを備えています。エクスポートされた複数形は、ICU互換の文字列として書き出されます。まず、サンプルファイルで他の ICU 引数型をテストしてください。

複数のJSONファイルを一度に翻訳することはできますか?

はい。Smartcatでは、複数のJSONファイルまたはZIPパッケージを1つのプロジェクトにアップロードし、すべてのターゲット言語へまとめて翻訳することができます。ソフトウェアローカリゼーションプロジェクトでは、名前空間または機能ごとに1つのコレクションを保持し、CLIまたはREST APIを使用してインポートおよびエクスポートを自動化できます。

言語ごとに翻訳されたJSONファイルを1つ取得するにはどうすればよいですか?

Smartcatはターゲット言語ごとに1つのファイルをエクスポートします。言語、フラットまたは構造化されたJSON、およびstrings-{LANGUAGE}.jsonのようなファイル名前テンプレートを選択し、ファイル群をダウンロードするか、CLIまたはREST APIを使用してリポジトリにプルします。言語ペア固有の情報については、JSONを英語やその他の言語に翻訳する方法に関するページに記載されています。

JSONファイルの翻訳の価格はどのように決まりますか?

Smartcatは単一の使用単位であるSmartwordsごとに課金されます。1つの出典ワードを1つのターゲット言語に翻訳すると、1つのSmartwordが使用されます。更新されたJSONファイルを再インポートすると、承認済みの文字列は翻訳メモリから入力されるため、新規および変更された文字列のみが翻訳され、請求されます。プランには、無制限のユーザーで共有されるSmartwordsの許容量が含まれています。

私のJSONコンテンツはSmartcat内で安全ですか?

はい。ロケールファイルには未リリースの機能の名前が含まれていることが多いため、SmartcatはすべてのJSONファイルをSOC 2 Type IIに準拠した隔離されたワークスペースに保持し、転送中および保存時に暗号化します。エンタープライズプランには、SSO、ロールベースのアクセス、監査証跡が追加されます。お客様の文字列が公開AIモデルのトレーニングに使用されることは決してなく、書面による要求から30日以内に削除または返却されます。

答えは見つかりませんでしたか?ローカリゼーションの専門家に相談する

次へJSONファイルを、アプリが対応しているすべての言語に翻訳します

Smartcat がお客様ご自身の JSON ファイルの1つをアップロードから言語ごとに1つの有効なファイルへと翻訳する様子をご覧いただくか、クレジットカード不要で15,000 Smartwords が付いた15日間の無料トライアルを開始してください。