fromLocale function

String fromLocale(
  1. Locale locale
)
final locale1 = Locale('en', 'US');
print(fromLocale(locale1));  // Outputs: en_US

final locale2 = Locale('zh', 'CN', 'Hans');
print(fromLocale(locale2));  // Outputs: zh_Hans_CN

final locale3 = Locale('ja');
print(fromLocale(locale3));  // Outputs: ja

Implementation

String fromLocale(Locale locale) {
  final languageCode = locale.languageCode;
  final countryCode = locale.countryCode;
  final scriptCode = locale.scriptCode;

  if (scriptCode != null) {
    return countryCode != null
        ? '${languageCode}_${scriptCode}_$countryCode'
        : '${languageCode}_$scriptCode';
  } else if (countryCode != null && countryCode.isNotEmpty) {
    return '${languageCode}_$countryCode';
  } else {
    return languageCode;
  }
}