Skip to main content
AI agent network visualization

Terjemahkan File-file Flutter ARB dalam Hitungan Detik

Metadata tetap utuh. Placeholder dipertahankan. Bentuk jamak benar menurut CLDR. File ARB Anda diterjemahkan tanpa merusak flutter gen-l10n.

Penerjemahan ARB Merusak Build Flutter

File ARB terlihat seperti JSON, tetapi bukan. File ini membawa entri metadata berawalan @, definisi placeholder dengan anotasi tipe, dan bentuk jamak ICU yang harus mengikuti aturan CLDR dengan tepat. Alat terjemahan umum merusak semuanya—dan flutter gen-l10n gagal tanpa pesan atau menampilkan kesalahan yang sulit dipahami.

Entri metadata berawalan @ diterjemahkan atau dihapus sehingga merusak definisi dan deskripsi placeholder

Nama placeholder di dalam kurung kurawal diterjemahkan, diganti namanya, atau dihapus sehingga aplikasi berhenti saat runtime

Bentuk jamak ICU memerlukan kategori CLDR yang tepat untuk setiap bahasa, tetapi alat umum melewatkannya atau menghasilkan struktur yang tidak valid

Header @@locale dirusak atau tidak cocok sehingga flutter gen-l10n menetapkan terjemahan ke bahasa yang salah

Sumber (Inggris)
lib/l10n/app_en.arb
{
  "@@locale": "en",
  "appTitle": "My Flutter App",
  "@appTitle": {
    "description": "The title of the application"
  },
  "greeting": "Hello, {name}!",
  "@greeting": {
    "description": "A greeting with the user's name",
    "placeholders": {
      "name": {
        "type": "String",
        "example": "John"
      }
    }
  },
  "itemCount": "{count, plural, =0{No items} =1{1 item} other{{count} items}}",
  "@itemCount": {
    "description": "Number of items in the cart",
    "placeholders": {
      "count": {
        "type": "int"
      }
    }
  },
  "lastLogin": "Last login: {date}",
  "@lastLogin": {
    "placeholders": {
      "date": {
        "type": "DateTime",
        "format": "yMMMd"
      }
    }
  }
}
Diterjemahkan (Jepang)
lib/l10n/app_ja.arb
{
  "@@locale": "de",
  "appTitle": "Meine Flutter-App",
  "@appTitle": {
    "description": "The title of the application"
  },
  "greeting": "Hallo, {name}!",
  "@greeting": {
    "description": "A greeting with the user's name",
    "placeholders": {
      "name": {
        "type": "String",
        "example": "John"
      }
    }
  },
  "itemCount": "{count, plural, =0{Keine Artikel} =1{1 Artikel} other{{count} Artikel}}",
  "@itemCount": {
    "description": "Number of items in the cart",
    "placeholders": {
      "count": {
        "type": "int"
      }
    }
  },
  "lastLogin": "Letzte Anmeldung: {date}",
  "@lastLogin": {
    "placeholders": {
      "date": {
        "type": "DateTime",
        "format": "yMMMd"
      }
    }
  }
}

Yang Dipertahankan i18n Agent

Entri Metadata @

Semua metadata berawalan @—deskripsi, placeholder, dan anotasi tipe—dipertahankan tepat seperti yang ditentukan

Keamanan Placeholder

Placeholder bernama seperti {userName}, {count}, dan {price} dideteksi serta dibiarkan utuh di semua terjemahan

Bentuk Jamak CLDR

Kategori bentuk jamak ICU (zero, one, two, few, many, other) dibuat dengan benar untuk setiap bahasa target sesuai aturan CLDR

Struktur JSON

Urutan kunci, struktur bertingkat, dan pemformatan khusus ARB sesuai dengan file sumber Anda sehingga diff tetap bersih

Berfungsi dengan Stack Flutter Anda

flutter gen-l10n (resmi)
Easy Localization
Internasionalisasi GetX

Cara Kerjanya

How i18n Agent works: Install, Translate, Done
1
2
3
terminal
$translate_filesrc/messages/en.json
 --target["de", "ja", "es"]
Done.3 languages, 142 keys translated.

Tanpa salin-tempel manual. Tanpa ekstraksi string. Hanya file terjemahan.

Coba i18n Agent Sekarang

Lepaskan file terjemahan Anda di sini

JSON, YAML, PO, XML, CSV, Markdown, Properties

atau klik untuk menjelajahi

Bahasa target

Tidak perlu mendaftarEstimasi instan

Pertanyaan yang Sering Diajukan

Pengembang?

Instal alat CLI dan terjemahkan file pertama Anda dalam 2 menit.

Instal Alat CLI

Tim enterprise?

Masih terikat kontrak TMS? Mari bicarakan migrasi Anda.