当前位置:   article > 正文

Rust: Tcp编程Demo_rust 读取tcpstream

rust 读取tcpstream

最基本的Hello World示例:

TcpServer端:

  1. use std::{net::TcpListener, io::{Read, Write}};
  2. fn main() {
  3. //绑定本机3000端口
  4. let listener = TcpListener::bind("127.0.0.1:3000").unwrap();
  5. println!("Running on port 3000...");
  6. //当有client连接上来时
  7. for stream in listener.incoming(){
  8. let mut stream = stream.unwrap();
  9. println!("Connection established!");
  10. //创建1k的缓存区
  11. let mut buffer = [0;1024];
  12. //读取client发过来的内容
  13. stream.read(&mut buffer).unwrap();
  14. //原样送回去(相当于netty的EchoServer)
  15. stream.write(&mut buffer).unwrap();
  16. }
  17. }

TcpClient端:

  1. use std::net::{TcpStream};
  2. use std::io::{Read,Write};
  3. use std::str;
  4. fn main() {
  5. //连接到server
  6. let mut stream = TcpStream::connect("127.0.0.1:3000").unwrap();
  7. //发送字符串
  8. stream.write("hello,rust.欢迎使用Rust".as_bytes()).unwrap();
  9. //创建1k的缓冲区,用于接收server发过来的内容
  10. let mut buffer = [0;1024];
  11. //读取server发过来的内容
  12. stream.read(&mut buffer).unwrap();
  13. //打印接收到的内容(注:如果收到的实际内容小于1k,后面的部分默认全是\u{0}填充,所以要trim_matches去掉)
  14. println!("Response from server:{:?}",str::from_utf8(&buffer).unwrap().trim_matches('\u{0}'));
  15. }

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/从前慢现在也慢/article/detail/640963
推荐阅读
相关标签
  

闽ICP备14008679号