JAVA-DAY5

来源:互联网 发布:mac终端怎么返回 编辑:程序博客网 时间:2024/05/17 04:03

I/O

1. I/O的含义:

   相对与Java程序的输入和输出

2. 流的分类:

   字节流   字符流

3. 常见的几种流的特点

  FileInputStream、FileOutputStream   字节流  FileReader 、FileWriter  字符流  InputStreamReader、OutputStreamWriter  转换流  BufferedReader、BufferedWriter   包装流  ObjectInputStream、ObjectOutputStream   对象流

4.

//字节流
FileInputStream: 特点:以字节的形式读取文件到Java程序中

    FileInputStream file=new FileInputStream(new File("src/FileOutputStream.txt"));    byte[] buf=new byte[1024];    file.read(buf);//读取文件到buf中    String str=new String(buf);//将字节数组转换为字符串    System.outprintln(str.trim());    file.close();//不要忘记关闭

FileOutputStream: 特点:以字节的形式输出文件

    File file=new File("src/FileOutputStream.txt");    //建立输出的字节流    FileOutputStream f=new FileOutputStream(file);    //输出    //f.write(97);  输出一个a    String str="hello";    byte[] buf = str.getBytes();    f.write(buf);    //刷新    f.flush();    //流使用后要关闭    f.close();

//转换流

   //将输出型的字节流转化为字符流   //特点 :以字符的形式输出文件
       OutputStreamWriter ow=new OutputStreamWriter(new FileOutputStream(new File("src/outwriter.txt")));       ow.write("writer");       ow.flush();       ow.close();

//包装流(字节流)

   特点:效率高

BufferReader:

       FileReader  reader=new FileReader(new File(src/outwriter.txt));       BufferedReader br=new BufferedReader(reader);       //读取多行       String str="";       String str2="";       while((str=br.readLine())!=null){              str2+=str;       }       System.out.println(str2);       br.close();//只关闭包装流那么流就被关闭了

BufferedWriter:

       FileWriter writer=new FileWriter(new File(src/outwriter.txt));       BufferedWriter bw=new BufferedWriter(Writer);       bw.writer("text");       bw.flush();       bw.close();

//对象流

ObjectInputStream:

    FileInputStream in=new FileInputStream("src/ObjectText.txt");    ObjectInputStream input=new ObjectInputStream(in);    Member m=(Member) input.readObject();    System.out.println(m.getUserName()+"   "+m.getPassWord()+"   "+m.getSex()+"   "+m.getAddress());

ObjectOutputStream:

    FileOutputStream out=new FileOutputStream("src/ObjectText.txt");    ObjectOutputStream output=new ObjectOutputStream(out);    Member m=new Member();    m.setUserName("张三");    m.setPassWord("66666");    m.setSex("男");    m.setAddress("浙江");    output.writeObject(m);    output.flush();    output.close();

Member类:

public class Member implements Serializable{       private String UserName;       private transient String PassWord; //transient设置为不可序列化       private String Sex;       private String Address;       public String getUserName() {              return UserName;       }       public void setUserName(String userName) {              UserName = userName;       }       public String getPassWord() {              return PassWord;       }       public void setPassWord(String passWord) {              PassWord = passWord;       }       public String getSex() {              return Sex;       }       public void setSex(String sex) {              Sex = sex;       }       public String getAddress() {              return Address;       }       public void setAddress(String address) {              Address = address;       }}

//PrintWriter

   //字符流   //servlet输出页面时使用的就是这个方法
    PrintWriter pw=new PrintWriter(new File("src/pw.txt"));    pw.print("张三");    pw.flush();    pw.close();

XML:

1、含义:可扩展标记语言

   <?xml version ="1.0"?>      <标记属性 ="属性值">       </标记>

2、作用:

   存储数据   传输数据

3、XML的好处:

   层次结构较为清晰   跨平台

4、约束文档:

   DTD, Schema

5、XML的解析: 不同语言解析的方式是不一样的


Java解析XML文件:SAX

DOMDOM4JJDOM
0 0
原创粉丝点击