Wie zu werfen, ein 'int' zu einem 'char' in C#?
Habe ich eine string-variable, die eine Mischung von zahlen und Buchstaben. Ich will erstellen Sie eine neue Zeichenfolge, die nur int
Werte der vorherigen string-variable. Also ich fand zwei Möglichkeiten, zu wirken int
zu char
. Jedoch funktionieren Sie nicht. Hier ist, was ich versucht habe
string onlyNumberString = "";
foreach (char onlyNum in puzzleData)
{
for (int i = 1; i < 10; i++)
{
if (onlyNum == (char)i)
{
onlyNumberString += onlyNum;
}
}
}
und
string onlyNumberString = "";
foreach (char onlyNum in puzzleData)
{
for (int i = 1; i < 10; i++)
{
if (onlyNum == Convert.ToChar(i))
{
onlyNumberString += onlyNum;
}
}
}
Du musst angemeldet sein, um einen Kommentar abzugeben.
Verwenden Sie Char.IsDigit statt, weitaus einfacher.
Können Sie einfach werfen ein
int
zu einemchar
es direkt:Aber zu tun, was Sie wollen, ich schlage vor, mit einem regulären Ausdruck:
Den oben ersetzen Sie alle Zeichen, die nicht 0-9 mit einem leeren Raum.
Alternative ist die Verwendung von LINQ und
char.IsDigit
:char
geben Sie den ASCII-Zeichen. Zum Beispiel(char)20
gibt DC4 (Device Control 4). Das Ziel der OP ist, zu konvertieren'5'
zu5
.Arbeit wird für x, wenn 0 <= x <= 9.
Können Sie es tun, wie:
... text.Where(c=>Char.IsDigit(c)) ...
😉Use your downvotes whenever you encounter an egregiously sloppy, no-effort-expended post,
Sinn? Siehe auch meta.stackexchange.com/questions/130046/when-should-i-voteEin paar Möglichkeiten:
Oder
Oder
char
geben Sie den ASCII-Zeichen. Das Ziel der OP ist, zu konvertieren'5'
zu5
.