Dieser Artikel wurde maschinell übersetzt. Wenn Sie die englische Version des Artikels anzeigen möchten, aktivieren Sie das Kontrollkästchen Englisch. Sie können den englischen Text auch in einem Popupfenster anzeigen, indem Sie den Mauszeiger über den Text bewegen.
Übersetzung
Englisch

StringBuilder.Insert-Methode: (Int32, Char[], Int32, Int32)

 

Veröffentlicht: Oktober 2016

Fügt die Zeichenfolgendarstellung eines angegebenen Unterarrays von Unicode-Zeichen an der angegebenen Zeichenposition in diese Instanz ein.

Namespace:   System.Text
Assembly:  mscorlib (in mscorlib.dll)

public StringBuilder Insert(
	int index,
	char[] value,
	int startIndex,
	int charCount
)

Parameter

index
Type: System.Int32

Die Position in dieser Instanz, an der die Einfügung beginnt.

value
Type: System.Char[]

Ein Zeichenarray.

startIndex
Type: System.Int32

Der Startindex in value.

charCount
Type: System.Int32

Die Anzahl der einzufügenden Zeichen.

Rückgabewert

Type: System.Text.StringBuilder

Ein Verweis auf diese Instanz, nachdem der Einfügevorgang abgeschlossen wurde.

Exception Condition
ArgumentNullException

value ist null, und startIndex und charCount sind nicht 0 (null).

ArgumentOutOfRangeException

index, startIndex oder charCount ist kleiner als 0 (null).

- oder -

index ist größer als die Länge dieser Instanz.

- oder -

startIndex plus charCount ist keine Position in value.

- oder -

Bei Erhöhung des Werts dieser Instanz würde MaxCapacity überschritten.

Vorhandene Zeichen werden verschoben, um Platz für den neuen Text zu schaffen. Die Kapazität dieser Instanz wird bei Bedarf angepasst.

Das folgende Beispiel veranschaulicht die Insert Methode.

using System;
using System.Text;

class Sample 
{
//                         index: 012345
    static string initialValue = "--[]--";
    static StringBuilder sb;

    public static void Main() 
    {
    string      xyz       = "xyz";
    char[]      abc       = {'a', 'b', 'c'};
    char        star      = '*';
    Object 	obj       = 0;

    bool        xBool     = true;
    byte        xByte     = 1;
    short       xInt16    = 2;
    int         xInt32    = 3;
    long        xInt64    = 4;
    Decimal     xDecimal  = 5;
    float       xSingle   = 6.6F;
    double      xDouble   = 7.7;

// The following types are not CLS-compliant.
    ushort      xUInt16   = 8;
    uint        xUInt32   = 9;
    ulong       xUInt64   = 10;
    sbyte       xSByte    = -11;
//
    Console.WriteLine("StringBuilder.Insert method");
    sb = new StringBuilder(initialValue);

    sb.Insert(3, xyz, 2);
    Show(1, sb);

    sb.Insert(3, xyz);
    Show(2, sb);

    sb.Insert(3, star);
    Show(3, sb);

    sb.Insert(3, abc);
    Show(4, sb);

    sb.Insert(3, abc, 1, 2);
    Show(5, sb);

    sb.Insert(3, xBool);     // True
    Show(6, sb);

    sb.Insert(3, obj);       // 0
    Show(7, sb);

    sb.Insert(3, xByte);     // 1
    Show(8, sb);

    sb.Insert(3, xInt16);    // 2
    Show(9, sb);

    sb.Insert(3, xInt32);    // 3
    Show(10, sb);

    sb.Insert(3, xInt64);    // 4
    Show(11, sb);

    sb.Insert(3, xDecimal);  // 5
    Show(12, sb);

    sb.Insert(3, xSingle);   // 6.6
    Show(13, sb);

    sb.Insert(3, xDouble);   // 7.7
    Show(14, sb);

// The following Insert methods are not CLS-compliant.
    sb.Insert(3, xUInt16);   // 8
    Show(15, sb);

    sb.Insert(3, xUInt32);   // 9
    Show(16, sb);

    sb.Insert(3, xUInt64);   // 10
    Show(17, sb);

    sb.Insert(3, xSByte);    // -11
    Show(18, sb);
//
    }

    public static void Show(int overloadNumber, StringBuilder sbs)
    {
    Console.WriteLine("{0,2:G} = {1}", overloadNumber, sbs.ToString());
    sb = new StringBuilder(initialValue);
    }
}
/*
This example produces the following results:

StringBuilder.Insert method
 1 = --[xyzxyz]--
 2 = --[xyz]--
 3 = --[*]--
 4 = --[abc]--
 5 = --[bc]--
 6 = --[True]--
 7 = --[0]--
 8 = --[1]--
 9 = --[2]--
10 = --[3]--
11 = --[4]--
12 = --[5]--
13 = --[6.6]--
14 = --[7.7]--
15 = --[8]--
16 = --[9]--
17 = --[10]--
18 = --[-11]--

*/

Universelle Windows-Plattform
Verfügbar seit 8
.NET Framework
Verfügbar seit 1.1
Portierbare Klassenbibliothek
Unterstützt in: portierbare .NET-Plattformen
Silverlight
Verfügbar seit 2.0
Windows Phone Silverlight
Verfügbar seit 7.0
Windows Phone
Verfügbar seit 8.1
Zurück zum Anfang
Anzeigen: