1
在C#中,以測試的UltraVNC上漲和本地機器上運行,我會做這個相當於Java的方法來測試TCP連接
public static bool TestAvailablility(int port, string responseStartsWith)
{
bool toReturn = false;
try
{
using (TcpClient client1 = new TcpClient())
{
client1.ReceiveTimeout = 10000;
client1.SendTimeout = 10000;
client1.Connect("localhost", port);
using (NetworkStream stream = client1.GetStream())
{
Byte[] response = new Byte[4096];
Int32 bytes = 0;
string serverReturnString = null;
bytes = stream.Read(response, 0, response.Length);
serverReturnString = System.Text.Encoding.ASCII.GetString(response, 0, bytes);
Console.WriteLine("TestAvailablility: serverReturnString = {0}", serverReturnString);
if (serverReturnString.StartsWith(responseStartsWith, StringComparison.OrdinalIgnoreCase))
{
toReturn = true;
}
}
}
}
catch (Exception ex) // SocketException for connect, IOException for the read.
{
Console.WriteLine("TestAvailable - Could not connect to VNC server. Exception info: ", ex);
}
return toReturn;
}
我是新來的Java所以我希望有人能幫助我用等效的方法來執行此操作。
謝謝你的幫助。我會做出一些改變。 添加: 'client1.setReuseAddress(真)' 變化: 'client1.bind()=> client1.connect()' 'serverReturnString =將String.valueOf(字節);' =>'serverReturnString = new String(response);' – GEverding