2015-04-27 5 views
0

У меня возникла проблема с проверкой длины номера карты, но не удалось ее депинировать, поскольку я новичок на vb.net. Пожалуйста, помогите мнеПроблема с двойным и целым типом

dim C as Double 
    C = CDbl(Val(InputBox("Kindly enter the card number", "Card Number"))) 
    if len(C) <> 15 then 
    msgbox("something...") 
    endif 

Даже после ввода 15-значного номера карты он вводит условие if.

+0

Проверить длину строки, возвращаемой InputBox() ** перед **, вы конвертируете ее в Double. –

+0

Вы не должны преобразовывать, чтобы удвоить, но просто проверьте длину строки. – Robert

+0

@ полностью спасибо !! – saurabh

ответ

0

Как насчет использования строки?

Dim C As String 
C = InputBox("Kindly enter the card number", "Card Number") 
If Len(C) <> 15 Then 
    MsgBox("something...") 
End If 

Len() возвращает количество байтов, используемых в переменной C.

Дважды используют 64 бита, на самом деле: Len (C) = 8

https://msdn.microsoft.com/en-us/library/f0ycy938(v=vs.110).aspx

+0

спасибо !! это сработало – saurabh