Sdílet prostřednictvím


Převody mezi řetězci a ostatními typy (Visual Basic)

Číselnou hodnotu nebo Booleanhodnotu data a času můžete převést na Stringhodnotu . Můžete také převést v opačném směru – od řetězcové hodnoty na číselnou, nebo Date – za předpokladu, Booleanže obsah řetězce lze interpretovat jako platnou hodnotu cílového datového typu. Pokud se jim nedaří, dojde k chybě za běhu.

Převody pro všechna tato přiřazení v obou směrech zužují převody. Měli byste použít klíčová slova převodu typu (CBool, CByte, , CDblCDate, CDec, CInt, , CLng, , CSngCUIntCSByteCStrCULngCShortCUShorta ).CType Val Funkce Format poskytují další kontrolu nad převody mezi řetězci a čísly.

Pokud jste definovali třídu nebo strukturu, můžete definovat operátory převodu typů mezi String třídou nebo strukturou a typem třídy nebo struktury. Další informace naleznete v tématu Postupy: Definování operátoru převodu.

Převod čísel na řetězce

Pomocí funkce můžete Format převést číslo na formátovaný řetězec, který může obsahovat nejen příslušné číslice, ale také formátovací symboly, jako je symbol měny (například $), oddělovače tisíců nebo symboly seskupování číslic (například ,) a oddělovač desetinných míst (například .). Formatautomaticky použije příslušné symboly podle nastavení místní možnosti zadané v systému Windows Ovládací panely.

Všimněte si, že operátor zřetězení (&) může implicitně převést číslo na řetězec, jak ukazuje následující příklad.

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

Převod řetězců na čísla

Pomocí funkce můžete Val explicitně převést číslice v řetězci na číslo. Val přečte řetězec, dokud nenarazí na jiný znak než číslice, mezera, tabulátor, spojnicový kanál nebo tečka. Sekvence "&O" a "&H" mění základ číselného systému a ukončí kontrolu. Dokud se čtení nezastaví, Val převede všechny příslušné znaky na číselnou hodnotu. Například následující příkaz vrátí hodnotu 141.825.

Val(" 14 1.825 miles")

Když Visual Basic převede řetězec na číselnou hodnotu, použije nastavení Místní možnosti zadané v systému Windows Ovládací panely k interpretaci oddělovače tisíců, oddělovače desetinných míst a symbol měny. To znamená, že převod může být úspěšný pod jedním nastavením, ale ne pod jiným. Například "$14.20" je přijatelné v anglickém (USA) národním prostředí, ale ne v žádném francouzském národním prostředí.

Viz také