パソコン活用研究BASIC&VB&EXCEL達人の道

VB.Net Framework SDKで遊んでみる(コンソールアプリケーション)


少しVB.Netでコンソールアプリ(まあ、たわいもないものですが)を作ってみました。

imports System
Public Module modmain
Sub Main()
dim i as integer
dim str as string
str = Console.ReadLine
'VB6以前の関数
i=Microsoft.VisualBasic.Len(str)
Console.Writeline(i)

i=str.length
Console.Writeline(i)
End Sub
End Module


今回は入力した文字列の文字数を数えるプログラムです。注目点は2つです。まず一点め。
コンソールから1行入力の場合は、Console.ReadLine を使います。

もうひとつの注目点は、VB.NetにはVB6時代と互換性を保つために、Microsoft.VisualBaiscというクラス
が用意されており、このクラスにVB6の関数が用意されている点です。
VB6時代の関数を使いたい場合は、Microsoft.VisualBasicという名前空間に続けてVB6の関数を記述します。
例えば、文字列の文字数を数える時はMicrosoft.VisualBasic.Len() になります。

さて、同じことをVB.Netの本来のやり方で実施するとなると、上記のプログラムでは
i=str.length
という記述になります。

VB6までの文字列は、文字列型という変数の基本型のひとつでしたが、
VB.Netでは文字列はstringクラスというクラスになっています。従って、プロパティやメソッドを持ちます。
length というのは文字列の長さをあらわすプロパティです。
ここは、VB6までとVB.Net以降の大きな違いのひとつです。

まあ、とりあえずはあまりそんなことは意識せず、文字列変数.length で文字列の長さがわかるんだろ
と覚えてしまえばいいと思いますが。




Stringクラスのメソッドを使ったプログラムをもうひとつ作ってみました。
ひし形を表示するプログラムです。

imports System
Public Module modmain
Sub Main()
dim i as integer
dim a,str as string
a=""
for i=0 to 5
str=a.PadLeft(6-i)
str=str+a.PadRight(i*2+1,"*")
Console.Writeline(str) ' Display message on computer screen.
next
for i=4 to 0 step -1
str=a.PadLeft(6-i)
str=str+a.PadRight(i*2+1,"*")
Console.Writeline(str)
next
End Sub
End Module




Top page | Visual Basic&Excel活用研究目次