Encoding and Localization 

When developing world-ready applications, you must focus attention on a variety of issues throughout the application design and development process. The three key issues are globalization, localizability, and localization.

Globalization is the first step in the process. A globalized application supports localized user interfaces and regional data for all users. Truly global applications should be culture-neutral and language-neutral. An intermediate step prior to localization is testing for localizability. In this step, you ensure that you have separated the application's resources that require translation from the rest of the application's code. If you correctly test for localizability before proceeding to the localization step, you should not have to modify your application's source code during localization. Localization is the last step in the process of developing a world-ready application. In this step, you customize your application for the specific cultures or regions to be supported. This step should consist primarily of translating the user interface into the target languages.

If you address globalization, localizability, and localization requirements from early on in the design phase, you will minimize the amount of time and money required to produce quality localized applications for the languages that you intend to support. The .NET Framework provides extensive support for developing world-ready applications. This topic provides information to help you design and develop world-ready applications.

For additional information, see Globalizing and Localizing Applications in the Visual Studio 2005 documentation, International Support in Microsoft Windows 2000 (www.msdn.microsoft.com/library/backgrnd/html/intl\_sup\_nt5.htm), and the Microsoft Global Software Development Site (www.microsoft.com/globaldev).

In This Section

  • Encoding and Localization Overview
    Describes the three steps involved in designing a world-ready application in managed code: globalization, localizability, and localization; explains the advantages of following this model.
  • Unicode in the .NET Framework
    Describes the Unicode universal character encoding scheme for characters and text and the benefits of using it internally in the .NET Framework.
  • String Indexing
    Describes how to use the StringInfo class to enumerate strings of text elements and iterate through those elements.
  • Resources in Applications
    Describes the .NET Framework's support for the creation and localization of resources and the satellite assembly resource model for packaging and deploying these localized resources.
  • Understanding Encodings
    Describes how to choose an appropriate Encoding and how to devise an appropriate fallback strategy.

Reference

  • System.Globalization Namespace
    Contains classes that define culture-related information, including the language, the country/region, the calendars in use, the format patterns for dates, currency, and numbers, and the sort order for strings.
  • System.Text Namespace
    Contains classes representing ASCII, ANSI, Unicode, UTF-7, UTF-8 and other character encodings.
  • Resource File Generator (Resgen.exe)
    Describes how to use Resgen.exe to convert .txt files and .resx (XML-based resource format) files to common language runtime binary .resources files.
  • ASP.NET QuickStart
    Provides the following samples in the Localization category: Setting Culture and Encoding, Localizing ASP.NET Applications, and Working with Resource Files.
  • Common Tasks QuickStart
    Provides the following Globalization and national language support (NLS) samples: CultureRegion Sample, MultipleEncodings Sample, Encoding Sample, and MultiCurrency Sample. Provides the following Resources samples: Create Resources, Use Resources, Read and Write Resources, and Make a Resource Reader.