Java.nio初步了解和学习
2012-04-18 17:53
441 查看
管道:
java.nio.channel包下:
调用:
/** * @throws IOException * @throws 肚子饿了 */ public void pipe() throws IOException { PipedInputStream pis = new PipedInputStream(); System.out.println(pis.toString()); Pipe pipe = Pipe.open(); System.out.println(pipe.sink().provider()); }
java.nio.channel包下:
/** * @category basic * @throws Exception * IOException * @code 实现抓的网页存入文本 */ public void bufferWithChannel() throws Exception { URL url = new URL("http://www.baidu.com"); URLConnection uc = url.openConnection(); BufferedReader br = new BufferedReader(new InputStreamReader( uc.getInputStream())); FileWriter fw = new FileWriter(new File("test.html")); while (true) { if (br.read() == -1) break; fw.write(br.readLine()); } fw.flush(); fw.close(); br.close(); /* 只能读取纯文本文件? */ FileInputStream fis = new FileInputStream(new File("log.txt")); FileOutputStream fos = new FileOutputStream(new File("new.txt")); /* 获得输入通道 */ FileChannel fic = fis.getChannel(); /* 获得输出通道 */ FileChannel foc = fos.getChannel(); ByteBuffer bb = ByteBuffer.allocate(1024); while (true) { bb.clear(); /* 从通道读入到缓冲区中 */ fic.read(bb); if (fis.read() == -1) break; /* 反转读写操作,当前要是读操作,就反转成写操作 */ bb.flip(); foc.write(bb); } fos.flush(); fis.close(); foc.close(); }
调用:
b.bufferWithChannel(); b.pipe();
相关文章推荐
- Java NIO初步了解
- JAVA:NIO初步了解
- JAVA学习第二十一课(多线程(一)) - (初步了解)
- JAVA学习第二十一课(多线程(一)) - (初步了解)
- Java学习----day9——(1)泛型初步了解
- Java学习----day4——(1)关于栈内存和堆内存的初步了解
- java nio编程学习笔记(1)--初步了解nio
- JAVA线程的初步学习
- 初步了解 Java类加载子系统
- 小白学习JavaScript——初步了解
- Java BIO、NIO、AIO 学习
- 学习Java开源框架前你应该了解的
- Sass学习笔记 -- 初步了解函数、运算、条件判断及循环
- 095day(Java封装了解,计算机字,定点数和浮点数的储存和直言命题的含义,结构,种类的学习)
- Java nio 学习笔记(二) Charset(字符集)与Selector(异步IO)的知识
- Java开发——JavaScript初步学习
- RabbitMQ学习之(一)_初步了解RabbitMQ、RabbitMQ的使用流程、为什么要使用RabbitMQ、RabbitMQ的应用场景
- java初步了解
- Java反射初步学习
- java学习-NIO(一)简介