一、 字符串
1、 单个字符串givenString
单个字符串已经给定
第一步:建立字节缓冲区大小
l 使用ByteBufferbuf=ByteBuffer.allocate(givenString.length());来新建字节缓冲区
l 直接使用ByteBufferbuf=ByteBuffer.allocate(1024);即缓冲区为1kB(如果字符串长度小于512个字符的话,如果字符串大于buf的长度的话,需要用while循环对字符串进行分段读取,这种情况很少发生。如果要增加程序的鲁棒性的话,可以使用:
int mark=0; //标志位
while(mark<givenString.length()*2){
buf.put(longArray.getBytes(),mark,min(buf, givenString.length()*2-mark))
//从mark开始,每次读取buf个到视图缓冲区,直到最后一场读取// givenString.length()*2-mark个到视//图缓冲区内,buf的位置自动位移。
channel.write(buf)
mark+=buf.position();
buf.clear();
}
)
第二步:将givenString写入buf
l 建立视图缓冲区CharBuffercharBuf=buf.asCharBuffer();将givenString放入视图缓冲区中:charBuf.put(givenString);
l 使用getBytes()方法将字符串转化为字节数组,buf.