Files
simple-rust-tests/__network/tcp/tcp_client/src/main.rs
2020-10-17 11:50:12 +08:00

28 lines
918 B
Rust

use std::net::TcpStream;
use std::io::{ Read, Write };
use std::str::from_utf8;
fn main() {
match TcpStream::connect("localhost:3333") {
Ok(mut stream) => {
println!("Successfully connected to server in port 3333");
let msg = b"Hello!";
stream.write(msg).unwrap();
println!("Sent Hello, awaiting reply...");
let mut data = [0_u8; 6]; // using 6 byte buffer
match stream.read_exact(&mut data) {
Ok(_) => if &data == msg {
println!("Reply is ok!");
} else {
let text = from_utf8(&data).unwrap();
println!("Unexpected reply: {}", text);
},
Err(e) => println!("Failed to receive data: {}", e),
}
},
Err(e) => println!("Failed to connect: {}", e),
}
println!("Terminated.");
}