当前位置: 首页 > news >正文

flash网站建设教程wordpress分享获得优惠

flash网站建设教程,wordpress分享获得优惠,centos网站开发,辣条网站建设书6 特殊操作流 6.1 标注输入输出流 System类中有两个静态的成员变量#xff1a; public static final InputStream in#xff1a;标准输入流#xff0c;通常该流对应于键盘输入或由主机环境或用户指定的另一个输入源public static final PrintStream out#xff1a;标准输…6 特殊操作流 6.1 标注输入输出流 System类中有两个静态的成员变量 public static final InputStream in标准输入流通常该流对应于键盘输入或由主机环境或用户指定的另一个输入源public static final PrintStream out标准输出流通常该流对应于显示输出或由主机环境或用户指定的另一个输入源 package test;import java.io.BufferedReader; import java.io.IOException; import java.io.InputStream; import java.io.InputStreamReader;public class Demo {public static void main(String[] args) throws IOException { /* //public static final InputStream in标准输入流InputStream is System.in;int by;while((byis.read()) ! -1) {System.out.print((char)by);}//如何把字节流转换为字符流InputStreamReader isr new InputStreamReader(is);//一次读一行是字符缓冲输入流的特有方法BufferedReader br new BufferedReader(isr);*/BufferedReader br new BufferedReader(new InputStreamReader(System.in));System.out.println(请输入一个字符串);String line br.readLine();System.out.println(你输入的字符串:line);br.close();} }6.2 打印流 打印流分类 字节打印流PrintStream字符打印流PrintWriter 打印流特点 只负责输出数据不负责读取数据有自己特有方法 字节打印流 PrintStream(String fileName)使用指定的文件名创建新的打印流使用继承父类的方法写数据查看时会转码使用自己特有方法写数据查看的数据原样输出 package test;import java.io.*;public class Demo {public static void main(String[] args) throws IOException {//PrintStream(String fileName)使用指定的文件名创建新的打印流PrintStream ps new PrintStream(E:\\test\\java.txt);/*ps.print(1);ps.print(2);*///12没有换行ps.println(97);ps.println(87);//97//87ps.close();} }字符打印流 方法名说明PrintWriter(String fileName)使用指定的文件名创建一个新的PrintWriter而不需要自动执行刷新PrintWriter(Writer out,boolean autoFlush)创建一个新的PrintWriterout字符输出流autoFlush一个布尔值如果为true则printlnprintf或format方法将刷新输出缓冲区 package test;import java.io.FileWriter; import java.io.IOException; import java.io.PrintWriter;public class Demo {public static void main(String[] args) throws IOException {//1,PrintWriter(String fileName) /* PrintWriter pw new PrintWriter(E:\\test\\java.txt);*//*pw.write(hello);pw.write(\r\n);pw.flush();pw.write(hello);pw.write(\r\n);pw.flush();*//**//*hellohello*//*pw.println(hello); //换行pw.flush();pw.println(hello);pw.flush();*///2,PrintWriter(Writer out,boolean autoFlush)PrintWriter pw new PrintWriter(new FileWriter(E:\\test\\java.txt,true));pw.println(hello);pw.println(hello); //构造方法自动刷新了pw.close();} }6.3 对象序列化 对象序列化就是将对象保存到磁盘中或者在网络中传输对象 这种机制就是使用一个字节序列表示个对象,该字节序列包含:对象的类型、对象的数据和对象中存储的属性等信息字节序列写到文件之后相当于文件中持久保存了一个对象的信息 反之该字节序列还可以从文件中读取回来重构对象对它进行反序列化 要实现序列化和反序列化就要使用对象序列化流和对象反序列化流: 对象序列化流: ObjectOutputStream对象反序列化流: ObjectlnputStream 6.3.1 对象序列化流 对象序列化流ObjectOutputStream 将Java对象的原始数据类型和图形写入OutputStream。 可以使用ObjectInputStream读取 (重构)对象。可以通过使用流的文件来实现对象的持久存储。如果流是网络套接字流, 则可以在另一个主机上或另一个进程中重构对象 构造方法 方法名说明ObjectOutputStream(OutputStream out)创建一个写入指定的OutputStream的ObjectOutputStream 序列化对象的方法 方法名说明void writeObject(Object obj)将指定的对象写入ObjectOutputStream注意 一个对象要想被序列化该对象所属的类必须必须实现Serializable[ˈsɪərɪlaɪzbl]接口 Serializable是一个标记接口实现该接口不需要重写任何方法 范例 Student类 package test;import java.io.Serializable; //NotSerializableException一个对象要想被序列化该对象所属的类必须必须实现Serializable接口 public class Student implements Serializable { private String name;private int age;public Student() { }public Student(String name, int age) {this.name name;this.age age;}public String getName() {return name;}public void setName(String name) {this.name name;}public int getAge() {return age;}public void setAge(int age) {this.age age;} }测试类 package test;import java.io.FileOutputStream; import java.io.IOException; import java.io.ObjectOutputStream;public class ObjectOutputStreamDemo {public static void main(String[] args) throws IOException {//ObjectOutputStream(OutputStream out) 创建一个写入指定的OutputStream的ObjectOutputStreamObjectOutputStream oos new ObjectOutputStream(new FileOutputStream(E:\\test\\java.txt));//创建对象Student s new Student(小白,10);//void writeObject(Object obj) 将指定的对象写入ObjectOutputStreamoos.writeObject(s);oos.close();/* sr test.Student蝄8krq I ageL namet Ljava/lang/String;xpt 灏忕櫧*/} }6.3.2 对象反序列化流 对象反序列化流ObjectInputStreamObjectInputStream反序列化前先使用ObjectOutputStream编写的原始数据和对象构造方法 方法名说明ObjectInputStream(InputStream in)创建从指定InputStream读取的ObjectInputStream 反序列化对象的方法 方法名说明Object readObject()从ObjectInputStream读取一个对象 范例 package test;import java.io.FileInputStream; import java.io.FileNotFoundException; import java.io.IOException; import java.io.ObjectInputStream;public class Demo {public static void main(String[] args) throws IOException, ClassNotFoundException {//ObjectInputStream(InputStream in) 创建从指定InputStream读取的ObjectInputStreamObjectInputStream ois new ObjectInputStream(new FileInputStream(E:\\test\\java.txt));//Object readObject() 从ObjectInputStream读取一个对象Student s (Student) ois.readObject();;System.out.println(s.getName(),s.getAge()); //小白,10ois.close();} }6.3.3 注意事项 1、用对象序列化流序列化了一个对象后,假如我们修改了对象所属的类文件读取数据会不会出问题呢? 会出问题 抛出InvalidClassException异常 2、如果出问题了如何解决呢? 给对象所属的类加一 个serialVersionUIDprivate static final long serialVersionUID 42L; 3、如果一个对象中的某个成员变量的值不想被序列化又该如何实现呢? 给该成员变量加transient [ˈtrænziənt] 关键字修饰该关键字标记的成员变量不参与序列化过程private transient int age; age不会参加序列化 6.4 Properties 6.4.1 Properties [ˈprɒpətiz]作为Map集合使用 Properties概述是一个Map体系的集合Properties可以保存到流或者从流加载范例 package test;import javafx.beans.property.Property;import java.util.Properties; import java.util.Set;public class Demo {public static void main(String[] args) {Properties prop new Properties();//存储元素prop.put(001,小黑);prop.put(002,小白);prop.put(003,小灰);SetObject keySet prop.keySet();for(Object key:keySet) {Object value prop.get(key);System.out.println(key,value); // 003,小灰 // 002,小白 // 001,小黑}} }6.4.2 Properties特有方法 方法名说明Object setProperty(String key, String value)设置集合的键和值都是String类型 底层调用Hashtable方法 putString getProperty(String key)使用此属性列表中指定的键搜索属性SetString stringPropertyNames()从该属性列表中返回一个不可修改的键集其中键及其应的值是字符串 范例 package test;import javafx.beans.property.Property;import java.util.Properties; import java.util.Set;public class Demo {public static void main(String[] args) {Properties prop new Properties();//1Object setProperty(String key, String value) 设置集合的键和值都是String类型 底层调用Hashtable方法 putprop.setProperty(001,小黑);/*public synchronized Object setProperty(String key, String value) {return put(key, value);}*/prop.setProperty(002,小白);prop.setProperty(003,小灰);/2String getProperty(String key) 使用此属性列表中指定的键搜索属性System.out.println(prop.getProperty(003)); //小灰System.out.println(prop.getProperty(004)); //null//3SetString stringPropertyNames() 从该属性列表中返回一个不可修改的键集其中键及其应的值是字符串SetString names prop.stringPropertyNames();for(String key:names) { // System.out.println(key); // 003 // 002 // 001String value prop.getProperty(key);System.out.println(key,value); // 003,小灰 // 002,小白 // 001,小黑}} }6.4.3 Properties与IO流相结合方法 方法名说明void load(InputStream inStream)从输入字节流读取属性列表(键和元素对)void load(Reader reader)从输入字符流读取属性列表(键和元素对)void store(OutputStream out, String comments)将此属性列表(键和元素对)写入此Properties表中以适合于使用load(InputStream)方法的格式写入输出字节流void store(Writer writer, String comments)将此属性列表(键和元索对)写入此Properties表中以适合使用load(Reader)方法的格式写入输出字符流 范例 package test;import java.io.FileReader; import java.io.FileWriter; import java.io.IOException; import java.util.Properties;public class Demo {public static void main(String[] args) throws IOException{//把集合中的数据保存到文件myStore();//把文件中的数据保存到集合myLood();}private static void myLood() throws IOException{Properties prop new Properties();FileReader fr new FileReader(E:\\test\\java.txt);//2,void load(Reader reader)prop.load(fr);fr.close();System.out.println(prop); //{003小灰, 002小白, 001小黑}}private static void myStore() throws IOException {Properties prop new Properties();prop.setProperty(001, 小黑);prop.setProperty(002, 小白);prop.setProperty(003, 小灰);//4,void store(Writer writer, String comments)FileWriter fw new FileWriter(E:\\test\\java.txt);prop.store(fw,null);fw.close();} }
http://www.hkea.cn/news/14299509/

相关文章:

  • 漳州市住房建设局网站郴州网站网站建设
  • 网站建设有什么服务推荐wordpress主题xiu
  • 如何在各大网站发布信息中山网上房地产
  • 静态网站如何做自适应移动端湖北省建筑信息平台
  • 郑州企业如何建网站公司网站建设项目详情
  • 渝北网站制作搭建网站需要什么语言
  • 计算机机应用网站建设与维护电商自学网
  • 建设明星网站的目的高校信息化建设网站系统微信
  • 响应式相册网站模板企业管理软件系统
  • 开篇网站推广深圳百度总部
  • 无锡百度竞价推广学习网站建设优化
  • 网站收录平台方法哪些做直播卖食品的网站有哪些
  • 三明网站seo汉化wordpress插件
  • 网站怎么做可以合法让别人充钱可以生成静态网站源码
  • 校园网站建设 方案论证深圳公司网站建设服务为先
  • 视频网站开发的论文响应式网站开发现状
  • 网站登录密码忘记了怎么办网站建站合同
  • 网站模板建设二级目录现在有人还做网站吗
  • 国通快速建站给公司网站做seo
  • 网站虚拟服务器宁波网络公司做网站
  • 济宁建站公司建网站能赚钱吗赚多少
  • 网站建设 流程高端网站设计制作
  • 网站开发外文参考文献上海个人网站制作公司
  • 自己做的工艺品在哪个网站上可以卖织梦网站地图生成
  • 国内最大网站制作公司定制营销型网站公司
  • 科技网站制作推广app怎么做
  • 北京工程建设信息网站上海备案证查询网站查询网站查询系统
  • 现在流行什么做网站wordpress教程 ppt
  • 茂名营销网站开发做网站的步骤是什么
  • 苏州微网站制作网站布局 种类