Delen via


Conversies tussen tekenreeksen en andere typen (Visual Basic)

U kunt een numerieke waarde of Booleandatum/tijd-waarde converteren naar een String. U kunt ook converteren in omgekeerde richting, van een tekenreekswaarde naar numeriek, Booleanof Date , op voorwaarde dat de inhoud van de tekenreeks kan worden geïnterpreteerd als een geldige waarde van het doelgegevenstype. Als dat niet het geval is, treedt er een runtimefout op.

De conversies voor al deze toewijzingen, in beide richtingen, beperken conversies. U moet het type conversietrefwoorden (CBool, , , CDateCDbl, , CDec, CInt, CSngCShortCUIntCStrCSByteCLng, CULngen CUShort) CTypegebruiken . CByte De Format functies en Val functies bieden u extra controle over conversies tussen tekenreeksen en getallen.

Als u een klasse of structuur hebt gedefinieerd, kunt u operatoren voor typeconversie definiëren tussen String en het type van uw klasse of structuur. Zie Een conversieoperator definiëren voor meer informatie.

Conversie van getallen naar tekenreeksen

U kunt de Format functie gebruiken om een getal te converteren naar een opgemaakte tekenreeks, die niet alleen de juiste cijfers kan bevatten, maar ook symbolen zoals een valutateken (zoals $), scheidingstekens voor duizendtallen of groeperingssymbolen voor cijfers (zoals ,) en een decimaalteken (zoals .). Formatgebruikt automatisch de juiste symbolen volgens de landinstellingen die zijn opgegeven in de Windows Configuratiescherm.

Houd er rekening mee dat de samenvoegingsoperator& impliciet een getal kan converteren naar een tekenreeks, zoals in het volgende voorbeeld wordt weergegeven.

' The following statement converts count to a String value.  
Str = "The total count is " & count  

Conversie van tekenreeksen naar getallen

U kunt de Val functie gebruiken om de cijfers in een tekenreeks expliciet te converteren naar een getal. Val leest de tekenreeks totdat er een ander teken dan een cijfer, spatie, tab, regelinvoer of punt wordt aantreft. De reeksen '&O' en '&H' wijzigen de basis van het nummersysteem en beëindigen het scannen. Totdat het lezen stopt, Val worden alle juiste tekens geconverteerd naar een numerieke waarde. Met de volgende instructie wordt bijvoorbeeld de waarde 141.825geretourneerd.

Val(" 14 1.825 miles")

Wanneer Visual Basic een tekenreeks converteert naar een numerieke waarde, worden de landinstellingen gebruikt die zijn opgegeven in de Windows-Configuratiescherm om het scheidingsteken voor duizendtallen, het scheidingsteken voor decimalen en het valutasymbool te interpreteren. Dit betekent dat een conversie kan slagen onder één instelling, maar niet onder een andere. Is bijvoorbeeld "$14.20" acceptabel in de Engelse landinstelling (Verenigde Staten), maar niet in een Franse landinstelling.

Zie ook