Gibt es eine bessere Möglichkeit zu testen, ob eine Zeichenfolge in eine andere Ganzzahl als die folgende konvertiert werden kann?Testen, ob eine Zeichenfolge in VB.NET als Ganzzahl umgewandelt werden kann
Public Function IsInt(ByVal value As Object) As Boolean
Try
Dim temp As Integer = CInt(value)
Return True
Catch ex As Exception
Return False
End Try
End Function
von "besser" ich meine weniger wortreich und/oder ohne eine Ausnahme.
TryParse wäre der Weg zu gehen, aber ich bin mit dem Compact Framework 2.0 und TryParse scheint nicht umgesetzt zu werden ....
Dank sowieso.
Es scheint, dass MarkJ korrekt ist und das Obige scheint funktional das gleiche wie IsNumeric zu sein, also nehme ich an, dass das meine Antwort ist. Ich weiß nicht, warum ich dachte, CInt sei strenger als IsNumeric. Ich denke, es ist besser, mit CInt Verse IsNumeric zu testen, da das die Funktion ist, die ich für die Konvertierung verwende?
+1 für Ausnahmen im normalen Kontrollfluss vermieden werden folgen. – Heinzi
Was, keine Vorschläge hier, um reguläre Ausdrücke zu verwenden? Ich bin geschockt! (http://stackoverflow.com/questions/223832/check-a-string-to-see-if-all-characters-are-hexadecimal-values) –
@Michael Burr: Auf Ihre Anfrage habe ich einen Vorschlag hinzugefügt Verwenden regulärer Ausdrücke. Da TryParse nicht unterstützt wird, denke ich, dass Regex in diesem Fall die nächstbeste Option ist. –