20141006 作業一 WWW伺服器
Imports System
Imports System.IO
Imports System.Net
Imports System.Net.Sockets
Imports System.Text
Imports Microsoft.VisualBasic
Module Module1
Sub Main()
Dim Web_file As String = "c:\index.html"
Dim TextLine As String
Dim server As TcpListener
server = Nothing
Try
Dim port As Int32 = 13000
Dim localAddr As IPAddress = IPAddress.Parse("192.168.0.116")
server = New TcpListener(localAddr, port)
server.Start()
Dim bytes(1024) As Byte
Dim data As String = Nothing
While True
Console.Write("Waiting for a connection... ")
Dim client As TcpClient = server.AcceptTcpClient()
Console.WriteLine("Connected!")
data = Nothing
Dim stream As NetworkStream = client.GetStream()
Dim i As Int32
i = stream.Read(bytes, 0, bytes.Length)
data = System.Text.Encoding.ASCII.GetString(bytes, 0, i)
Console.WriteLine("Received: {0}", data)
If System.IO.File.Exists(Web_file) = True Then
Dim objReader As New System.IO.StreamReader(Web_file, System.Text.Encoding.GetEncoding("big5"))
Do While objReader.Peek() <> -1
TextLine = TextLine & objReader.ReadLine() & ControlChars.CrLf
Loop
objReader.Close()
Else
MsgBox("File Does Not Exist")
End If
Dim msg As Byte() = System.Text.Encoding.ASCII.GetBytes(TextLine)
stream.Write(msg, 0, msg.Length)
Console.WriteLine("Sent: {0}", data)
client.Close()
End While
Catch e As SocketException
Console.WriteLine("SocketException: {0}", e)
Finally
server.Stop()
End Try
Console.WriteLine(ControlChars.Cr + "Hit enter to continue....")
Console.Read()
End Sub 'Main
End Module