○文字列に全角文字が含まれているか判定

■VB7

Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
    If (isOneByteChar(TextBox1.Text)) Then
        MessageBox.Show("半角で構成された文字列です")
    Else
        MessageBox.Show("全角が含まれた文字列です")
    End If
End Sub

'--------------------------------------------------------------------------------
'1バイト文字で構成された文字列であるか判定
'
'1バイト文字のみで構成された文字列 : True
'2バイト文字が含まれている文字列   : False
'--------------------------------------------------------------------------------
Private Function isOneByteChar(ByVal str As String) As Boolean
    Dim byte_data As Byte() = System.Text.Encoding.GetEncoding(932).GetBytes(str)
    If (byte_data.Length = str.Length) Then
        Return True
    Else
        Return False
    End If
End Function


■C#


private void button1_Click(object sender, System.EventArgs e)
{
	if(isOneByteChar(textBox1.Text ))
	{
		MessageBox.Show("半角文字列で構成されています");
	}
	else
	{
		MessageBox.Show("全角文字列が含まれています");
	}
}

//--------------------------------------------------------------------------------
//1バイト文字で構成された文字列であるか判定
//
//1バイト文字のみで構成された文字列 : True
//2バイト文字が含まれている文字列   : False
//--------------------------------------------------------------------------------
private bool isOneByteChar(string str)
{
	byte [] byte_data = System.Text.Encoding.GetEncoding(932).GetBytes(str);
	if (byte_data.Length == str.Length)	{
		return true;
	}else{
		return false;
	}
}




▲トップページ > Visual BASIC と C#