Day20 类工具 IO流 字符流

Day20

类工具 IO流

System类

  • 类中方法和属性都是静态的。

字段

  • out对应标准输出
  • in对应标准输入

System常见方法

long currentTimeMillis();

返回当前时间的毫秒值,源时间点是UTC1970.1.1午夜。

public static Properties getProperties();

  • 获取系统的属性信息,并存储到了Properties集合中。
  • Properties里的key和value都是字符串
  • 提供各种全局信息,方便跨平台的兼容性

Runtime类

  • 没有构造函数,但是有动态方法,意味着是单例设计模式。
  • exec(string)方法是执行方法。

Process类

  • 代表进程

Math类

  • 包含各种的数学方法。
  • 全都是静态方法。

Date类

  • 接受时间时, 年份y为y-1900,月份为0-11,日期由1到31,
  • 毫秒值 —> 日期对象
    • 构造函数为Date()和Date(long),后者可以将指定毫秒值封装成Date对象。
  • 日期对象 -> 毫秒值
    • getTime()方法,可以将日期对象转化为毫秒

DateFormat类

  • 使用DateFormat.getDateInstance().format(myDate)工厂方法来获取对象。

Calendar类

== 尚未学习 ==


IO流

  • Java用流的方式来处理数据。相应的类都在IO包中。
  • 分为字节流和字符流,前者按字节处理,后者按字符处理。
  • 输入和输出是相对于内存来说的

常用基类

字节流的顶层基类

  • InputStream,OutputStream
    字符流的顶层基类
  • Reader,Writer

写入文件

打开文件方式:构造函数

  • FileWriter FileWriter(“file name”);
  • FileWriter FileWriter(“Filename”, true); 可以对文件进行续写。
  • 如果文件不存在,则自动创建。
  • 如果文件存在,则会被覆盖。

写入方法

  • write(string);将数据写入到临时存储缓冲区中。
  • flush();进行刷新,将缓冲区的数据写入到输出目的地中。类似于文本编辑工具中的保存功能。
  • close();将此流关闭。关闭前会自动刷新此流。

错误处理方式

''FileWriter fw = null; //要在try代码块之外构建FileWriter新对象
''
'' try {
''
'' fw = new FileWriter("demo.txt", true);
''
'' fw.write("abcde" + LINE_SEPARATOR + "lalala");
''
'' } catch (IOException e) {
'' System.out.println(e.toString());
'' } finally {
'' //close方法要在finally里进行,并且要进行不为空的判断,且要对close方法进一步判断
'' try {
'' if (fw != null)
'' fw.close();
'' } catch (IOException e) {
'' throw new RuntimeException("关闭失败");
'' }

读取数据

创建读取字符数据的对象

  • FileReader(String name) 该过程称为用一个读取流关联一个文件。
  • 结尾处的整数值为-1,也即EOF

读取方法

  • int read(); 读取单个的字符
  • char[] read(char[]); 可以将输入流以字符数组的形式读入。
  • char[] read(char[], startIndex, endIndex);

posted on 2017-04-05 17:36  hazelnut  阅读(80)  评论(0)    收藏  举报

导航