시리얼통신할때 주로 string과 같은 문자열을 위주로 데이터를 송신하고 수신했는데, 이런 문자열 데이터를 숫자로 변환하는 방법들을 숙지하고 정리하고자 한다.
int.TryParse 함수를 사용하면 문자열을 32비트 정수로 변환할 수 있다.
TryParse(문자열,Int32)
두 개의 매개 변수가 있다. 첫 번째는 변환하려는 문자열이고, 두 번째 매개 변수는 out 키워드로 수정된다. 반환값은 TryParse가 성공했는지 여부로 나타난다.
try
{
string num = "100";
int value;
bool isSuccess = int.TryParse(num, out value);
if(isSuccess)
{
value = value + 1;
Console.WriteLine("Value is " + value);
}
}
catch (FormatException e)
{
Console.WriteLine(e.Message);
}
출력값 : 101
Int32.Parse()메서드를 사용하여 문자열을 int로 변환할 수 있다.
try
{
int strVal = Int32.Parse("2000");
strVal = strVal +1;
Console.WriteLine("Value is " + strVal);
}
catch (FormatException e)
{
Console.WriteLine(e.Message);
}
출력값 : 2001
C#에는 String을 Integer로 변환할 수 있는 Convert 클래스가 있다.
try
{
string no = "100";
int value = Convert.ToInt32(no);
value = value + 1;
Console.WriteLine("Value is " + value);
}
catch (FormatException e)
{
Console.WriteLine(e.Message);
}
문자열을 십진수로 변환하는 클래스
문자열을 실수형float로 변환하는 클래스
문자열을 실수형Double 변환하는 클래스
문자열을 short로 변환하는 클래스
문자열을 long으로 변환하는 클래스