SecureString.InsertAt(Int32, Char) Metod
Definition
Viktigt
En del information gäller för förhandsversionen av en produkt och kan komma att ändras avsevärt innan produkten blir allmänt tillgänglig. Microsoft lämnar inga garantier, uttryckliga eller underförstådda, avseende informationen som visas här.
Infogar ett tecken i den här säkra strängen vid den angivna indexpositionen.
public:
void InsertAt(int index, char c);
public void InsertAt(int index, char c);
[System.Runtime.ExceptionServices.HandleProcessCorruptedStateExceptions]
public void InsertAt(int index, char c);
member this.InsertAt : int * char -> unit
[<System.Runtime.ExceptionServices.HandleProcessCorruptedStateExceptions>]
member this.InsertAt : int * char -> unit
Public Sub InsertAt (index As Integer, c As Char)
Parametrar
- index
- Int32
Indexpositionen där parametern c infogas.
- c
- Char
Tecknet som ska infogas.
- Attribut
Undantag
Den här säkra strängen har redan tagits bort.
Den här säkra strängen är skrivskyddad.
index är mindre än noll eller större än längden på den här säkra strängen.
-eller-
Om du utför den här åtgärden blir längden på den här säkra strängen större än 65 536 tecken.
Ett fel uppstod när värdet för den här säkra strängen skulle skyddas eller avskyddas.
Exempel
I följande exempel visas hur AppendCharmetoderna , InsertAt, RemoveAt, SetAtoch Clear påverkar värdet för ett SecureString objekt.
using System;
using System.Security;
class SecureStringExample
{
public static void Main()
{
string msg = "The current length of the SecureString object: {0}\n";
Console.WriteLine("1) Instantiate the SecureString object.");
SecureString ss = new SecureString();
Console.WriteLine(msg, ss.Length);
Console.WriteLine("2) Append 'a' to the value.");
ss.AppendChar('a');
Console.WriteLine(msg, ss.Length);
Console.WriteLine("3) Append 'X' to the value.");
ss.AppendChar('X');
Console.WriteLine(msg, ss.Length);
Console.WriteLine("4) Append 'c' to the value.");
ss.AppendChar('c');
Console.WriteLine(msg, ss.Length);
Console.WriteLine("5) Insert 'd' at the end of the value.");
ss.InsertAt(ss.Length, 'd');
Console.WriteLine(msg, ss.Length);
Console.WriteLine("6) Remove the last character ('d') from the value.");
ss.RemoveAt(3);
Console.WriteLine(msg, ss.Length);
Console.WriteLine("7) Set the second character of the value to 'b'.");
ss.SetAt(1, 'b');
Console.WriteLine(msg, ss.Length);
Console.WriteLine("8) Delete the value of the SecureString object:");
ss.Clear();
Console.WriteLine(msg, ss.Length);
ss.Dispose();
}
}
// The example displays the following output:
// 1) Instantiate the SecureString object.
// The current length of the SecureString object: 0
//
// 2) Append 'a' to the value.
// The current length of the SecureString object: 1
//
// 3) Append 'X' to the value.
// The current length of the SecureString object: 2
//
// 4) Append 'c' to the value.
// The current length of the SecureString object: 3
//
// 5) Insert 'd' at the end of the value.
// The current length of the SecureString object: 4
//
// 6) Remove the last character ('d') from the value.
// The current length of the SecureString object: 3
//
// 7) Set the second character of the value to 'b'.
// The current length of the SecureString object: 3
//
// 8) Delete the value of the SecureString object:
// The current length of the SecureString object: 0
Imports System.Security
Module Example
Public Sub Main()
Dim msg As String = "The current length of the SecureString object: {0}" + vbCrLf
Console.WriteLine("1) Instantiate the SecureString object.")
Dim ss As New SecureString()
Console.WriteLine(msg, ss.Length)
Console.WriteLine("2) Append 'a' to the value.")
ss.AppendChar("a"c)
Console.WriteLine(msg, ss.Length)
Console.WriteLine("3) Append 'X' to the value.")
ss.AppendChar("X"c)
Console.WriteLine(msg, ss.Length)
Console.WriteLine("4) Append 'c' to the value.")
ss.AppendChar("c"c)
Console.WriteLine(msg, ss.Length)
Console.WriteLine("5) Insert 'd' at the end of the value.")
ss.InsertAt(ss.Length, "d"c)
Console.WriteLine(msg, ss.Length)
Console.WriteLine("6) Remove the last character ('d') from the value.")
ss.RemoveAt(3)
Console.WriteLine(msg, ss.Length)
Console.WriteLine("7) Set the second character of the value to 'b'.")
ss.SetAt(1, "b"c)
Console.WriteLine(msg, ss.Length)
Console.WriteLine("8) Delete the value of the SecureString object:")
ss.Clear()
Console.WriteLine(msg, ss.Length)
ss.Dispose()
End Sub
End Module
' The example displays the following output:
' 1) Instantiate the SecureString object.
' The current length of the SecureString object: 0
'
' 2) Append 'a' to the value.
' The current length of the SecureString object: 1
'
' 3) Append 'X' to the value.
' The current length of the SecureString object: 2
'
' 4) Append 'c' to the value.
' The current length of the SecureString object: 3
'
' 5) Insert 'd' at the end of the value.
' The current length of the SecureString object: 4
'
' 6) Remove the last character ('d') from the value.
' The current length of the SecureString object: 3
'
' 7) Set the second character of the value to 'b'.
' The current length of the SecureString object: 3
'
' 8) Delete the value of the SecureString object:
' The current length of the SecureString object: 0
Kommentarer
Indexet är nollbaserat. det första tecknet i den här säkra strängen är vid indexposition noll.
Om implementeringen använder en skyddsmekanism, till exempel kryptering, är värdet för den säkra strängen, om sådan finns, oskyddad. c infogas vid den angivna indexpositionen. Sedan skyddas det nya värdet på nytt. Metoden InsertAt ger samma resultat som AppendChar metoden, som infogar ett tecken i slutet av en säker sträng, om parametern indexInsertAt för är inställd på längden på den här instansen.