2个版本
0.1.1 | 2022年8月12日 |
---|---|
0.1.0 | 2022年8月12日 |
#2118 in 编码
9KB
108 行
mllp-rs
mllp-rs 是一个用于 HL7 文件标准的 Rust MLLP 实现。它封装了 HL7 文件在网络传输中。该库提供对封装的 HL7 文件进行编码和解码的实用工具。它还提供生成 MLLP ACK 和 MLLP NAK 的辅助工具。
安装
将以下内容放入你的 Cargo.toml 文件中的 [dependencies]
mllp-rs = "0.1.0"
入门
要编码 HL7 文件,请使用 MllpCodec::encode()
,要解码请使用 MllpCodec::decode()
。
客户端代码可能如下所示
use std::io::prelude::*;
use std::net::TcpStream;
use mllp_rs::MllpCodec;
// Client side
let mut stream = TcpStream::connect("127.0.0.1:5000")?;
let _ = stream.write(MllpCodec::encode("MSH|^~\&|WIR|||36|20200514123930||VXU^V04^VXU_V04|43|P|2.5.1|||ER").as_bytes());
服务器端代码可能如下所示
use std::io::prelude::*;
use std::net::TcpListener;
use mllp_rs::MllpCodec;
let mut listener = TcpListener::bind(addr).unwrap();
for stream in listener.incoming() {
let mut buf: Vec<u8> = vec![];
let _ = stream?.read_to_end(&mut buf);
let decoded_data = String::from_utf8_lossy(MllpCodec::decode(buf.as_slice())?);
}
杂项
你也可以查看 hl7-mllp-codec !