我通过java中的socket发送一些字符并用C ++代码接收它。它适用于每个角色,但是当我发送分号(;)时,它不会在另一端收到。只有分号才会被删除。我不理解这一点,它奇怪而奇怪。任何人都可以请帮助
Java代码(客户端)
我调用此函数并将字符串作为参数传递,其中包含我要与(;)一起发送的所有字符。
public void send_string(Socket socket, String str) throws IOException
{
DataOutputStream out = new DataOutputStream(socket.getOutputStream());
out.writeBytes(str);
out.flush();
}
C ++代码(服务器)
int main()
{
std::string recvData = "";
try
{
ServerSocket server ( 30000 );
while ( true )
{
ServerSocket new_sock;
server.accept ( new_sock );
try
{
while ( true )
{
new_sock >> recvData;
// processing of received data, here i don't see (;) which was sent
}
}
catch(SocketException &e)
{
cout<<e.description().c_str();
}
}
catch(SocketException &e)
{
cout<<e.description().c_str();
}