Visual Basicに関する世界観2(クラスライブラリ)です。
VisualBasic2010パーフェクトマスター (Perfect Master SERIES)やVisualBasic2010逆引き大全555の極意を参考にしています。
VisualBasic2010逆引き大全555の極意を参考に執筆・引用しました。
配列は、Arrayクラスで操作できる。たとえばArray.Sort(ar1)で配列をソートできる。ar1は配列の変数名。
Dimで要素数を設定した配列は、ReDimで要素数を変更できる。
Lengthプロパティで要素数を得られる。多次元配列ならばGetLength()メソッドを使う。
Sort()メソッドでソートができる。Reverse()メソッドで逆順にできる。
Clear()メソッドでクリアできる。CopyTo()メソッドとClone()メソッドでコピーができる。
要素数が動的に変化する配列は、ArrayListクラスから利用できる。ジェネリックの場合はListクラスを使う。
キーと値による連想配列は、HashTableクラスから利用できる。ジェネリックの場合はDictionaryクラスを使うと、データ型を指定できる。キーでソートする場合はSortedListクラスを使う。
コレクションの要素の値を検索するには、IndexOf()メソッドを使う。
(VisualBasic2010逆引き大全555の極意を参考に執筆しました。)
文字列の処理はStringクラスから行える。
メソッド | 説明 |
---|---|
IndexOf() | 検索 |
Contains() | 存在のチェック |
Replace() | 置換 |
Split() | 分割 |
Remove() | 削除 |
Insert() | 挿入 |
Join() | 連結 |
などのメソッドから操作出来る。
(VisualBasic2010逆引き大全555の極意を参考に執筆しました。)
ファイル処理はIO.Fileクラスの各メソッドから行える。ディレクトリの処理はIO.Directoryクラス。
File/Directoryクラスは、
メソッド | 説明 |
---|---|
Exists() | 存在確認 |
Delete() | 削除 |
Move() | 移動 |
Copy() | コピー |
RenameFile() | 名前変更 |
などの操作が出来る。
また、Directoryは
メソッド | 説明 |
---|---|
CreateDirectory() | フォルダの作成 |
GetDirectories() | フォルダ内のフォルダ一覧を取得 |
GetFiles() | フォルダ内のファイル一覧を取得 |
などの操作が出来る。
(VisualBasic2010逆引き大全555の極意を参考に執筆しました。)
テキストファイルは、IO.File.OpenRead(), IO.File.OpenText(), IO.StreamReaderなどから読み込みが行なえる。
StreamReaderでは、一行ずつ読み込むためにはReadLine()メソッド、一文字ずつ読み込むためにはRead()メソッド、一気に全部読み込むためにはReadToEnd()メソッドを使う。
また、IO.File.OpenWrite(), IO.StreamWriterなどから書き込みが行える。
StreamWriterでは、一行書き込むためにはWriteLine()メソッド、単に書き込むにはWrite()メソッドを使う。
また末尾に追記するにはIO.File.AppendText()メソッドを使う。
(VisualBasic2010逆引き大全555の極意を参考に執筆しました。)
また、コモンダイアログは、ファイルを開くダイアログがOpenFileDialog、名前をつけて保存のダイアログがSaveFileDialogコンポーネントから開くことができる。
フォントの指定はFontDialog、色の指定はColorDialogから行える。
(VisualBasic2010逆引き大全555の極意を参考に執筆しました。)
まず、ソースコードの先頭に
Imports System.Net.Sockets
を追加する。
ネットワーク上のコンピュータにTCP/IPで接続するには、
Dim client As New TcpClient
でクライアントを作って、
client.Connect("localhost", 80)
などとする。
その後に、
Dim stream As NetworkStream = client.GetStream()
でストリームを取得できる。
この状態で、
stream.Write(hoge_buff, 0, hoge_buff.Length)
した内容が、
stream.Read(hoge_data, 0, hoge_data.Length)
で返ってくる。hoge_buffに送りたいデータを指定し、hoge_dataに送られた内容が入る。
そして、
System.Text.Encoding.ASCII.GetString(hoge_data)
でテキストを得られる。
サーバーを作りたい場合は、
server = New TcpListener(IPAddress.Loopback, 9000)
として、
server.Start()
とする。Stopで停止する。
この時Threding.Thredクラスを利用してスレッドを作成すること。
サーバーを作る場合、AcceptTcpClient()を使うことで、クライアントからの接続待ちができる。この状態でクライアントから接続を受けると、AcceptTcpClient()から返り値であるTcpClientオブジェクトが得られる。その上でストリームを取得してRead()などを行なえば良い。
Dim client As TcpClient = server.AcceptTcpClient() Dim stream As NetworkStream = client.GetStream()
ちなみに、Webサーバーに接続したい時は、ソースコードの先頭に
Imports System.Net
を追加し、WebClientクラスを使用する。OpenRead(), DownloadFile(), UploadFile()などのメソッドの他、クエリ文字列(URLの?の後に続く文字列)を操作するメソッドなどがある。
(VisualBasic2010逆引き大全555の極意を参考に執筆しました。)
Linuxカーネル(ソケット)も参照のこと。