Char.IsControl Metoda
Definicja
Ważne
Niektóre informacje odnoszą się do produktu w wersji wstępnej, który może zostać znacząco zmodyfikowany przed wydaniem. Firma Microsoft nie udziela żadnych gwarancji, jawnych lub domniemanych, w odniesieniu do informacji podanych w tym miejscu.
Wskazuje, czy określony znak Unicode jest kategoryzowany jako znak kontrolny.
Przeciążenia
IsControl(Char) |
Wskazuje, czy określony znak Unicode jest kategoryzowany jako znak kontrolny. |
IsControl(String, Int32) |
Wskazuje, czy znak w określonej pozycji w określonym ciągu jest kategoryzowany jako znak kontrolny. |
Uwagi
Znaki kontrolne to formatowanie i inne znaki niedrukowe, takie jak ACK, UNICODE, CR, FF, LF i VT. Standard Unicode przypisuje punkty kodu z \U0000 do \U001F, \U007F i z \U0080 do \U009F do znaków kontrolnych. Zgodnie ze standardem Unicode te wartości mają być interpretowane jako znaki kontrolne, chyba że ich użycie jest inaczej zdefiniowane przez aplikację. Prawidłowe znaki kontrolne są członkami UnicodeCategory.Control kategorii.
IsControl(Char)
Wskazuje, czy określony znak Unicode jest kategoryzowany jako znak kontrolny.
public:
static bool IsControl(char c);
public static bool IsControl (char c);
static member IsControl : char -> bool
Public Shared Function IsControl (c As Char) As Boolean
Parametry
- c
- Char
Znak Unicode do oceny.
Zwraca
true
jeśli c
jest znakiem kontrolnym; w przeciwnym razie false
.
Przykłady
W poniższym przykładzie wymieniono punkt kodu Unicode każdego ze znaków sterujących.
using namespace System;
void main()
{
int charsWritten = 0;
for (int ctr = 0x00; ctr <= 0xFFFF; ctr++)
{
wchar_t ch = ctr;
if (Char::IsControl(ch))
{
Console::Write(L"\U{0:X4} ", ctr);
charsWritten++;
if (charsWritten % 6 == 0)
Console::WriteLine();
}
}
}
// The example displays the following output:
// U0000 U0001 U0002 U0003 U0004 U0005
// U0006 U0007 U0008 U0009 U000A U000B
// U000C U000D U000E U000F U0010 U0011
// U0012 U0013 U0014 U0015 U0016 U0017
// U0018 U0019 U001A U001B U001C U001D
// U001E U001F U007F U0080 U0081 U0082
// U0083 U0084 U0085 U0086 U0087 U0088
// U0089 U008A U008B U008C U008D U008E
// U008F U0090 U0091 U0092 U0093 U0094
// U0095 U0096 U0097 U0098 U0099 U009A
// U009B U009C U009D U009E U009F
using System;
public class ControlChars
{
public static void Main()
{
int charsWritten = 0;
for (int ctr = 0x00; ctr <= 0xFFFF; ctr++)
{
char ch = Convert.ToChar(ctr);
if (char.IsControl(ch))
{
Console.Write(@"\U{0:X4} ", ctr);
charsWritten++;
if (charsWritten % 6 == 0)
Console.WriteLine();
}
}
}
}
// The example displays the following output to the console:
// \U0000 \U0001 \U0002 \U0003 \U0004 \U0005
// \U0006 \U0007 \U0008 \U0009 \U000A \U000B
// \U000C \U000D \U000E \U000F \U0010 \U0011
// \U0012 \U0013 \U0014 \U0015 \U0016 \U0017
// \U0018 \U0019 \U001A \U001B \U001C \U001D
// \U001E \U001F \U007F \U0080 \U0081 \U0082
// \U0083 \U0084 \U0085 \U0086 \U0087 \U0088
// \U0089 \U008A \U008B \U008C \U008D \U008E
// \U008F \U0090 \U0091 \U0092 \U0093 \U0094
// \U0095 \U0096 \U0097 \U0098 \U0099 \U009A
// \U009B \U009C \U009D \U009E \U009F
open System
let mutable charsWritten = 0
for i in 0x00..0xFFFF do
let ch = Convert.ToChar i
if Char.IsControl ch then
printf $"\\U{i:X4} "
charsWritten <- charsWritten + 1
if charsWritten % 6 = 0 then
printfn ""
// The example displays the following output to the console:
// \U0000 \U0001 \U0002 \U0003 \U0004 \U0005
// \U0006 \U0007 \U0008 \U0009 \U000A \U000B
// \U000C \U000D \U000E \U000F \U0010 \U0011
// \U0012 \U0013 \U0014 \U0015 \U0016 \U0017
// \U0018 \U0019 \U001A \U001B \U001C \U001D
// \U001E \U001F \U007F \U0080 \U0081 \U0082
// \U0083 \U0084 \U0085 \U0086 \U0087 \U0088
// \U0089 \U008A \U008B \U008C \U008D \U008E
// \U008F \U0090 \U0091 \U0092 \U0093 \U0094
// \U0095 \U0096 \U0097 \U0098 \U0099 \U009A
// \U009B \U009C \U009D \U009E \U009F
Module ControlChars
Public Sub Main()
Dim charsWritten As Integer = 0
For ctr As Integer = &H0 To &HFFFF
Dim ch As Char = Convert.ToChar(ctr)
If Char.IsControl(ch) Then
Console.Write("\U{0:X4} ", ctr)
charsWritten += 1
If (charsWritten Mod 6) = 0 Then
Console.WriteLine()
End If
End If
Next
End Sub
End Module
' The example displays the following output to the console:
' \U0000 \U0001 \U0002 \U0003 \U0004 \U0005
' \U0006 \U0007 \U0008 \U0009 \U000A \U000B
' \U000C \U000D \U000E \U000F \U0010 \U0011
' \U0012 \U0013 \U0014 \U0015 \U0016 \U0017
' \U0018 \U0019 \U001A \U001B \U001C \U001D
' \U001E \U001F \U007F \U0080 \U0081 \U0082
' \U0083 \U0084 \U0085 \U0086 \U0087 \U0088
' \U0089 \U008A \U008B \U008C \U008D \U008E
' \U008F \U0090 \U0091 \U0092 \U0093 \U0094
' \U0095 \U0096 \U0097 \U0098 \U0099 \U009A
' \U009B \U009C \U009D \U009E \U009F
Dotyczy
IsControl(String, Int32)
Wskazuje, czy znak w określonej pozycji w określonym ciągu jest kategoryzowany jako znak kontrolny.
public:
static bool IsControl(System::String ^ s, int index);
public static bool IsControl (string s, int index);
static member IsControl : string * int -> bool
Public Shared Function IsControl (s As String, index As Integer) As Boolean
Parametry
- s
- String
Ciąg.
- index
- Int32
Pozycja znaku do oceny w s
.
Zwraca
true
jeśli znak w pozycji index
w s
jest znakiem kontrolnym; w przeciwnym razie false
.
Wyjątki
s
to null
.
index
jest mniejsze niż zero lub większe niż ostatnia pozycja w s
.
Przykłady
Poniższy przykład wylicza znaki w ciągu i określa, czy są to znaki kontrolne.
using namespace System;
void main()
{
String ^ sentence = "This is a " + Environment::NewLine + "two-line sentence.";
for (int ctr = 0; ctr < sentence->Length; ctr++)
{
if (Char::IsControl(sentence, ctr))
Console::WriteLine("Control character \\U{0} found in position {1}.",
Convert::ToInt32(sentence[ctr]).ToString("X4"), ctr);
}
}
// The example displays the following output:
// Control character \U000D found in position 10.
// Control character \U000A found in position 11.
using System;
public class ControlChar
{
public static void Main()
{
string sentence = "This is a " + Environment.NewLine + "two-line sentence.";
for (int ctr = 0; ctr < sentence.Length; ctr++)
{
if (Char.IsControl(sentence, ctr))
Console.WriteLine("Control character \\U{0} found in position {1}.",
Convert.ToInt32(sentence[ctr]).ToString("X4"), ctr);
}
}
}
// The example displays the following output to the console:
// Control character \U000D found in position 10.
// Control character \U000A found in position 11.
open System
let sentence = "This is a " + Environment.NewLine + "two-line sentence."
for i = 0 to sentence.Length - 1 do
if Char.IsControl(sentence, i) then
printfn $"Control character \\U{Convert.ToInt32 sentence[i]:X4} found in position {i}."
// The example displays the following output to the console:
// Control character \U000D found in position 10.
// Control character \U000A found in position 11.
Module ControlChar
Public Sub Main()
Dim sentence As String = "This is a " & vbCrLf & "two-line sentence."
For ctr As Integer = 0 to sentence.Length - 1
If Char.IsControl(sentence, ctr) Then
Console.WriteLine("Control character \U{0} found in position {1}.", _
Convert.ToInt32(sentence.Chars(ctr)).ToString("X4"), ctr)
End If
Next
End Sub
End Module
' The example displays the following output to the console:
' Control character \U000D found in position 10.
' Control character \U000A found in position 11.