java字节流字符流以及高效缓冲流的使用
来源:互联网 发布:人品差的演员知乎 编辑:程序博客网 时间:2024/06/16 05:03
字节流一般用于传输视频文件等,字符流一般用于传输文本类型的文件。
Java的字节流
InputStream是所有字节输入流的祖先,而OutputStream是所有字节输出流的祖先。
Java的字符流
Reader是所有读取字符串输入流的祖先,而writer是所有输出字符串的祖先。
结合开始所说的输入/输出流 ,出现了个一小框架。
字节流 字符流
输入流 InputStream Reader
输出流 OutputStream Writer
注:文中separator是为了区分是Windows还是Unix下的系统分隔符(,/);
使用案例:
创建新文件
import java.io.*;class hello{public static void main(String[] args) {File f=new File("D:hello.txt");try{f.createNewFile();}catch (Exception e) {e.printStackTrace();}}}【案例2】File类的两个常量
import java.io.*;class hello{public static void main(String[] args) {System.out.println(File.separator);System.out.println(File.pathSeparator);}}案例:删除一个文件
/*** 删除一个文件* */import java.io.*;class hello{public static void main(String[] args) {String fileName="D:"+File.separator+"hello.txt";File f=new File(fileName);if(f.exists()){f.delete();}else{System.out.println("文件不存在");}}}案例:创建一个文件夹
/*** 创建一个文件夹* */import java.io.*;class hello{public static void main(String[] args) {String fileName="D:"+File.separator+"hello";File f=new File(fileName);f.mkdir();}}案例:判断一个指定的路径是否为目录
/*** 使用isDirectory判断一个指定的路径是否为目录* */import java.io.*;class hello{public static void main(String[] args) {String fileName="D:"+File.separator;File f=new File(fileName);if(f.isDirectory()){System.out.println("YES");}else{System.out.println("NO");}}}
字节流
案例:【向文件中写入字符串】
/*** 字节流* 向文件中写入字符串* */import java.io.*;class hello{public static void main(String[] args) throws IOException {String fileName="D:"+File.separator+"hello.txt";File f=new File(fileName);OutputStream out =new FileOutputStream(f);String str="你好";byte[] b=str.getBytes();out.write(b);out.close();}}
Android流输出
public class StreamTools { /** * 将输入流转换成字符串 * * @param is * 从网络获取的输入流 * @return */ public static String streamToString(InputStream is) { try { //ByteArrayOutputStream 需要一个Byte数组做为缓冲 ByteArrayOutputStream baos = new ByteArrayOutputStream(); byte[] buffer = new byte[1024]; int len = 0; while ((len = is.read(buffer)) != -1) { baos.write(buffer, 0, len); } baos.close(); is.close(); byte[] byteArray = baos.toByteArray(); return new String(byteArray); } catch (Exception e) { Log.e(tag, e.toString()); return null; } }}
0 0
- java字节流字符流以及高效缓冲流的使用
- java字节流与字符流的区别&编码&缓冲
- Java I/O流复习(二)—字符流、字符缓冲流、以及和字节流的区别
- 字节流、字符流、字节缓冲流、字符缓冲流
- 字节缓冲流和字符缓冲流的对比
- 字符流,字节流,缓冲
- 字符流,字节流,缓冲
- 缓冲的字符流 字节流和字符流
- 【Java学习笔记】24:缓冲流(缓冲字节流/缓冲字符流)
- JAVA IO :使用带缓冲的字节流读写数据
- java中的字符流、字节流、缓冲流
- Java中字符字节缓冲流操作实例
- java 缓冲字符流
- Java IO流 文件的复制的几种方法(字节流,字符流,缓冲流)
- JAVA之字节缓冲流
- Java之字节缓冲流
- Java之字节流、字节缓冲流
- IO学习(九)字节缓冲流,字符缓冲流
- 【Leetcode】:108. Convert Sorted Array to Binary Search Tree 问题 in JAVA
- bzoj 4025: 二分图 lct
- Ubuntu12.04 LTS编译openwrt
- Eclipse编译运行dex.force.jumbo的错误
- 常见异常整理之一:com.mysql.jdbc.exceptions.jdbc4.CommunicationsException: Communications link failure The la
- java字节流字符流以及高效缓冲流的使用
- Linux常用操作
- c++ 获取文件版本号
- poj3070
- Android 学习总结
- 解决hibernate无法自动创建表
- 冒泡排序
- jz2440烧录(二)
- 思想上移,行动下移