黑马程序员——IO(二)
来源:互联网 发布:上海程序员工资 编辑:程序博客网 时间:2024/05/26 17:49
——Java培训、Android培训、iOS培训、.Net培训、期待与您交流! ——-
流操作的基本规律:最痛苦的就是流对象有很多,不知道该用那一个。
通过明确来完成。
(1)、明确源和目的
源:输入流InputStream Reader 目的:输出流OutputStream Writer
(2)、操作的数据是否是纯文本
是:字符流 Reader Writer 不是:字节流 InputStream OutputStream
(3)、当体系明确后,再明确要使用那个具体的对象
通过设备来进行区分: 源设备:内存 硬盘 键盘 目的设备:内存 硬盘 控制台
File类
1、用来将文件或者文件夹封装成对象
2、方便对文件与文件夹进行操作
3、File对象可以作为参数传递给流的构造函数。
4、了解File类中的常用方法。
File类常用方法
File f = new File("C:\\文件夹\\1.Java"); File f1 = new File("C:\\文件夹"); //创建一个目录。f1.mkdir(); //创建一个文件夹,如果传入文件名中还有文件夹,会自动创建根文件夹和子文件夹。 f.mkdirs(); /* 调用文件的创建方法,如果该文件的目录不存在,那么将报异常, 如果该文件存在的话,就不创建文件,如果不存在就创建该文件。 */ f.createNewFile(); //是否是可执行文件 sop(f.canExecute()); //文件是否存在 sop(f.exists()); //是否是一个文件 sop(f.isFile()); //是否是一个目录 sop(f.isDirectory()); //是否是隐藏文件 sop(f.isHidden());
遍历文件夹目录
package 遍历E盘;//遍历E盘下的文件夹目录import java.io.*;public class IOliu { static BufferedWriter xie = null; public static void main(String[] args) throws IOException { File fe = new File("E://"); xie = new BufferedWriter(new FileWriter("E:\\KuGou\\a.txt")); show(fe, 0); xie.flush(); xie.close(); } public static String ggt(int le) { StringBuilder sb = new StringBuilder(); for (int x = 0; x < le; x++) { sb.append(" "); } return sb.toString(); } public static void show(File f, int le) throws IOException { // TODO Auto-generated method stub System.out.println(ggt(le) + f); le++; xie.write(ggt(le) + f.toString()); xie.newLine(); File[] files = f.listFiles(); for (int x = 0; x < files.length; x++) { if (files[x].isDirectory()) {//判断是否文件夹 show(files[x], le);//递归调用 } else { System.out.println(ggt(le) + files[x]); xie.write(ggt(le) + files[x]); xie.newLine(); } } }}
IO流(Properties简述)
Properties 是 Hashtable 的子类 也就是说它具备Map集合的特点,而且它里面存储的键值对都是字符串 是集合中和IO技术相结合的集合容器 该对象特点:可以用于键值对形式的配置文件。 那么在加载数据时候,需要数据有固定格式:键=值
Properties存取
import java.util.Properties;import java.util.Set;public class Test{public static void main(String...args){ Propertiesprop = System.getProperties(); Set<String> names = prop.stringPropertyNames(); for(String name : names){ sop(name+"::"+prop.getProperty(name)); } } public static void sop(Object obj){ System.out.println(obj); } }
IO流(PrintWriter)
打印流
该流提供了打印方法,可以将各种数据烈性的数据都原样打印。
字节打印流
PrintStream
构造函数可以接受的参数类型
1、file对象。
2、字符串路径。String
3、字节输出流 OutpuStream
字符打印流
PrintWriter
构造函数可以接受的参数类型
1、file对象。
2、字符串路径。String
3、字节输出流 OutpuStream
4、字符输出流 Writer
import java.io.BufferedReader;import java.io.InputStreamReader;import java.io.PrintWriter;import java.io.IOException;import java.io.FileWriter;public class Test { public static void main(String... args) throws IOException { BufferedReader bufr = new BufferedReader(new InputStreamReader( System.in)); PrintWriter out = new PrintWriter(new FileWriter("C:\\1.Java"), true); for (String line = null; (line = bufr.readLine()) != null;) { if ("over".equals(line)) break; out.println(line); //由于PrintWriter加入一个参数,true表示自动刷新,所以这里就不用刷新。 // out.flush(); } bufr.close(); out.close(); }}
0 0
- 黑马程序员——IO(二)
- 黑马程序员——IO二
- 黑马程序员——IO(二)
- 黑马程序员——IO输入与输出(二)
- 黑马程序员——IO学习笔记(二)
- 黑马程序员——IO流(二)
- 黑马程序员——IO(Input Output)流(二)
- 黑马程序员——JAVA IO输入输出(二)
- 黑马程序员——io流(二)字节流
- 黑马程序员——IO复习小结(二)
- 黑马程序员——Java IO流(二)
- 黑马程序员——IO流(二)
- 黑马程序员——IO流(二)
- 黑马程序员——JAVA IO输入输出(二)
- 黑马程序员——Java之IO流(二)
- 黑马程序员——IO流(二)
- 黑马程序员——IO流(二)
- 黑马程序员——IO流(二)
- ubuntu15.10 安装 lampp
- 循环结构中break、continue、return和exit的区别
- POJ - 1716 Integer Intervals(差分约束系统)
- CentOS、Ubuntu、Debian三个linux比较异同
- iOS开发基础之用三种不同方式创建Table View应用
- 黑马程序员——IO(二)
- RMI执行过程分析
- 黑马程序员——网络编程
- 58.iOS6 7 cell适配 tableView背景
- 关于Ubuntu与Debian的关系,了解!
- GPU编程入门简介
- 黑马程序员--学习OC@property和构造方法
- 给Linux系统管理员准备的Nmap命令的29个实用范例
- iOS应用架构谈 网络层设计方案