Struct LocaleIdentifier
Represents identification information for a language or its regional variant.
Also includes access to the CultureInfo which provides culture-specific instances
of the DateTimeFormatInfo, NumberFormatInfo, CompareInfo, and TextInfo objects.
Syntax
public struct LocaleIdentifier : IEquatable<LocaleIdentifier>, IComparable<LocaleIdentifier>
Examples
This example shows the various ways to create a LocaleIdentifier.
public class LocaleIdentifierExample1 : MonoBehaviour
{
void Start()
{
var localeEnglishSystemLanguage = new LocaleIdentifier(SystemLanguage.English);
var localeEnglishCode = new LocaleIdentifier("en");
var localeEnglishCi = new LocaleIdentifier(CultureInfo.GetCultureInfo("en"));
Debug.Log(localeEnglishSystemLanguage);
Debug.Log(localeEnglishCode);
Debug.Log(localeEnglishCi);
}
}
This shows how to create a Locale for English and a regional Locale for English(UK).
public class LocaleIdentifierExample2 : MonoBehaviour
{
void Start()
{
var localeId = new LocaleIdentifier(SystemLanguage.English);
var locale = Locale.CreateLocale(localeId);
Debug.Log("English locale: " + locale);
var regionalLocaleId = new LocaleIdentifier("en-GB");
var regionalLocale = Locale.CreateLocale(regionalLocaleId);
Debug.Log("English(en-GB) locale: " + regionalLocale);
}
}
Constructors
LocaleIdentifier(CultureInfo)
Create a LocaleIdentifier from a CultureInfo instance.
Declaration
public LocaleIdentifier(CultureInfo culture)
Parameters
Type |
Name |
Description |
CultureInfo |
culture |
|
LocaleIdentifier(String)
Create a LocaleIdentifier from a culture code string.
Declaration
public LocaleIdentifier(string code)
Parameters
Type |
Name |
Description |
String |
code |
|
LocaleIdentifier(SystemLanguage)
Declaration
public LocaleIdentifier(SystemLanguage systemLanguage)
Parameters
Type |
Name |
Description |
SystemLanguage |
systemLanguage |
|
Properties
Code
The culture name in the format [language]-[region].
The name is a combination of an ISO 639 two-letter lowercase culture code associated with a language and an ISO 3166
two-letter uppercase subculture code associated with a country or region.
For example, Language English would be 'en', Regional English(UK) would be 'en-GB' and Regional English(US) would be 'en-US'.
It is possible to use any string value when representing a non-standard identifier.
Declaration
public readonly string Code { get; }
Property Value
CultureInfo
Declaration
public readonly CultureInfo CultureInfo { get; }
Property Value
Type |
Description |
CultureInfo |
|
Examples
This example shows how the CultureInfo can be retrieved after creating a LocaleIdentifier using a Code.
public class CultureInfoExample : MonoBehaviour
{
void Start()
{
var localeIdentifier = new LocaleIdentifier("en");
Debug.Log("Code 'en' maps to the CultureInfo: " + localeIdentifier.CultureInfo.NativeName);
}
}
Methods
CompareTo(LocaleIdentifier)
Compare to another LocaleIdentifier.
Performs a comparison against CultureInfo.EnglishName
property.
Declaration
public int CompareTo(LocaleIdentifier other)
Parameters
Returns
Equals(Object)
Compare the LocaleIdentifier to another LocaleIdentifier.
Declaration
public override bool Equals(object obj)
Parameters
Type |
Name |
Description |
Object |
obj |
|
Returns
Equals(LocaleIdentifier)
Compare the LocaleIdentifier to another LocaleIdentifier.
Declaration
public bool Equals(LocaleIdentifier other)
Parameters
Returns
GetHashCode()
Declaration
public override int GetHashCode()
Returns
Operators
Equality(LocaleIdentifier, LocaleIdentifier)
Compare the LocaleIdentifier to another LocaleIdentifier.
Declaration
public static bool operator ==(LocaleIdentifier l1, LocaleIdentifier l2)
Parameters
Returns
Implicit(CultureInfo to LocaleIdentifier)
Create a LocaleIdentifier from a CultureInfo instance.
Declaration
public static implicit operator LocaleIdentifier(CultureInfo culture)
Parameters
Type |
Name |
Description |
CultureInfo |
culture |
|
Returns
Implicit(String to LocaleIdentifier)
Create a LocaleIdentifier from a culture code string.
Declaration
public static implicit operator LocaleIdentifier(string code)
Parameters
Type |
Name |
Description |
String |
code |
|
Returns
Implicit(SystemLanguage to LocaleIdentifier)
Declaration
public static implicit operator LocaleIdentifier(SystemLanguage systemLanguage)
Parameters
Type |
Name |
Description |
SystemLanguage |
systemLanguage |
|
Returns
Inequality(LocaleIdentifier, LocaleIdentifier)
Compare the LocaleIdentifier to another LocaleIdentifier.
Declaration
public static bool operator !=(LocaleIdentifier l1, LocaleIdentifier l2)
Parameters
Returns
Did you find this page useful? Please give it a rating:
Thanks for rating this page!
What kind of problem would you like to report?
Thanks for letting us know! This page has been marked for review based on your feedback.
If you have time, you can provide more information to help us fix the problem faster.
Provide more information
You've told us this page needs code samples. If you'd like to help us further, you could provide a code sample, or tell us about what kind of code sample you'd like to see:
You've told us there are code samples on this page which don't work. If you know how to fix it, or have something better we could use instead, please let us know:
You've told us there is information missing from this page. Please tell us more about what's missing:
You've told us there is incorrect information on this page. If you know what we should change to make it correct, please tell us:
You've told us this page has unclear or confusing information. Please tell us more about what you found unclear or confusing, or let us know how we could make it clearer:
You've told us there is a spelling or grammar error on this page. Please tell us what's wrong:
You've told us this page has a problem. Please tell us more about what's wrong:
Thank you for helping to make the Unity documentation better!
Your feedback has been submitted as a ticket for our documentation team to review.
We are not able to reply to every ticket submitted.