有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

如何在C#应用程序中读取java DataOutputStream数据

我试图将“Hello Server”消息从java代码传递到dot net代码,但我无法读取该消息。我如何阅读来自网络的信息

爪哇:

public static void main(String[] args) 
{  
try
{      
Socket s=new Socket("192.168.1.100",6666);  
DataOutputStream dout=new DataOutputStream(s.getOutputStream());  
dout.writeUTF("Hello Server");  
dout.flush();  
dout.close();  
s.close();  
}
catch(Exception e)
{
System.out.println(e);
}  
} 

网络:

static void Main(string[] args)
    {  
        System.Net.Sockets.TcpListener serverSocket = new System.Net.Sockets.TcpListener(6666);
        int requestCount = 0;
        TcpClient clientSocket = default(TcpClient);
        serverSocket.Start();
        Console.WriteLine(" » Server Started");
        clientSocket = serverSocket.AcceptTcpClient();
        Console.WriteLine(" » Accept connection from client");
        requestCount = 0;
    try
    {
        var reader = new BinaryReader(clientSocket.GetStream());
        var value = reader.ReadChar(); 
        Console.WriteLine(" » " + value);
    }
    catch (Exception ex)
    {
        Console.WriteLine(ex.ToString());
    }

    clientSocket.Close();
    serverSocket.Stop();
    Console.WriteLine(" » exit");

    Console.ReadLine();
}

共 (1) 个答案

  1. # 1 楼答案

    我已经找到了解决办法

      string s = string.Empty, NewLine = string.Empty; ;
                        System.IO.StreamReader MyStreamReader=new System.IO.StreamReader(clientSocket.GetStream(), System.Text.Encoding.UTF8);
                        while((NewLine=MyStreamReader.ReadLine())!=null)
                            s+=NewLine+"\r\n";
                        MyStreamReader.Close();