CultureInfo.Clone Metoda

Definicja

Tworzy kopię bieżącego CultureInfoelementu .

C#
public virtual object Clone ();

Zwraca

Kopia bieżącego CultureInfoelementu .

Implementuje

Przykłady

Poniższy przykład kodu pokazuje, że CultureInfo.Clone klonuje DateTimeFormatInfo również wystąpienia i NumberFormatInfo skojarzone z elementem CultureInfo.

C#
using System;
using System.Globalization;

public class SamplesCultureInfo  {

   public static void Main()  {

      // Creates and initializes a CultureInfo.
      CultureInfo myCI = new CultureInfo("en-US", false);

      // Clones myCI and modifies the DTFI and NFI instances associated with the clone.
      CultureInfo myCIclone = (CultureInfo) myCI.Clone();
      myCIclone.DateTimeFormat.AMDesignator = "a.m.";
      myCIclone.DateTimeFormat.DateSeparator = "-";
      myCIclone.NumberFormat.CurrencySymbol = "USD";
      myCIclone.NumberFormat.NumberDecimalDigits = 4;

      // Displays the properties of the DTFI and NFI instances associated with the original and with the clone.
      Console.WriteLine( "DTFI/NFI PROPERTY\tORIGINAL\tMODIFIED CLONE" );
      Console.WriteLine( "DTFI.AMDesignator\t{0}\t\t{1}", myCI.DateTimeFormat.AMDesignator, myCIclone.DateTimeFormat.AMDesignator );
      Console.WriteLine( "DTFI.DateSeparator\t{0}\t\t{1}", myCI.DateTimeFormat.DateSeparator, myCIclone.DateTimeFormat.DateSeparator );
      Console.WriteLine( "NFI.CurrencySymbol\t{0}\t\t{1}", myCI.NumberFormat.CurrencySymbol, myCIclone.NumberFormat.CurrencySymbol );
      Console.WriteLine( "NFI.NumberDecimalDigits\t{0}\t\t{1}", myCI.NumberFormat.NumberDecimalDigits, myCIclone.NumberFormat.NumberDecimalDigits );
   }
}

/*
This code produces the following output.

DTFI/NFI PROPERTY       ORIGINAL        MODIFIED CLONE
DTFI.AMDesignator       AM              a.m.
DTFI.DateSeparator      /               -
NFI.CurrencySymbol      $               USD
NFI.NumberDecimalDigits 2               4

*/

Uwagi

Klon jest zapisywalny, nawet jeśli oryginał CultureInfo jest tylko do odczytu. W związku z tym można zmodyfikować właściwości klonu.

Płytkia kopia obiektu jest tylko kopią obiektu. Jeśli obiekt zawiera odwołania do innych obiektów, płytka kopia nie tworzy kopii określonych obiektów. Odwołuje się on do oryginalnych obiektów. Natomiast głęboka kopia obiektu tworzy kopię obiektu i kopię wszystkiego bezpośrednio lub pośrednio przywoływająco przez ten obiekt.

Metoda Clone tworzy ulepszoną płytkią kopię. Obiekty zwracane przez NumberFormatwłaściwości , DateTimeFormat, TextInfoi Calendar są również kopiowane. W związku z tym sklonowany CultureInfo obiekt może modyfikować jego skopiowane właściwości bez wpływu na oryginalny CultureInfo obiekt.

Dotyczy

Produkt Wersje
.NET Core 1.0, Core 1.1, Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9
.NET Framework 1.1, 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
.NET Standard 1.0, 1.1, 1.2, 1.3, 1.4, 1.6, 2.0, 2.1
UWP 10.0

Zobacz też