import java.io.ByteArrayInputStream;
import java.io.ByteArrayOutputStream;
import java.io.DataInputStream;
import java.io.DataOutputStream;
import java.io.IOException;
/**
* 仅仅适用于 Java 与 C++ 通讯中,网络流解析与生成使用
*
* 高低位互换(Big-Endian 大头在前 & Little-Endian 小头在前)。
* 举例而言,有一个4字节的数据0x01020304,要存储在内存中或文件中编号 0˜3字节的位置,两种字节序的排列方式分别如下:
*
* Big Endian
*
* 低地址 高地址
* ---------------------------------------------------->
* 地址编号
* | 0 | 1 | 2 | 3 |
* +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
* | 01 | 02 | 03 | 04 |
* +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
*
* Little Endian
*
* 低地址 高地址
* ---------------------------------------------------->
* 地址编号
* | 0 | 1 | 2 | 3 |
* +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
* | 04 | 03 | 02 | 01 |
* +-+-+-