Get the App
SLTechnology News&Howtos  ›  Development  › 

How to understand data flow, object flow, and print stream in a stream

Shulou Source: shulou.com Published: 2022-06-02 10:18:12 09月10日 Update

This article introduces how to understand the data flow, object flow and print flow in the stream. The content is very detailed. Interested friends can use it for reference. I hope it will be helpful to you.

Data flow: DataOutputStream

Public class TestDataStream {public void writeData () {double [] arrays = new double [1000]; Arrays.fill (arrays, Math.PI); String fileName = "F:/java/test2.txt"; FileOutputStream out; DataOutputStream dos = null; try {out = new FileOutputStream (fileName); dos = new DataOutputStream (out) For (int I = 0; I

< arrays.length; i++) { dos.writeDouble(arrays[i]); } // dos.write(123); // dos.writeBoolean(true); // dos.writeChar('Z'); // dos.writeDouble(Math.PI); dos.flush(); } catch (FileNotFoundException e) { e.printStackTrace(); } catch (IOException e) { e.printStackTrace(); } finally { if (dos != null) { try { dos.close(); } catch (IOException e) { e.printStackTrace(); } } } } public static void main(String[] args) { TestDataStream tds = new TestDataStream(); tds.writeData(); } } 数据流:DataInputStream public class TestDataInputStream { public static void main(String[] args) { String fileName = "F:/java/test2.txt"; FileInputStream in = null; DataInputStream dis = null; try { in = new FileInputStream(fileName); dis = new DataInputStream(in); for (int i = 0; i < 1000; i++) { System.out.println(dis.readDouble() + "i: " + i); } // System.out.println(dis.read()); // System.out.println(dis.readBoolean()); // System.out.println(dis.readChar()); // System.out.println(dis.readDouble()); } catch (FileNotFoundException e) { e.printStackTrace(); } catch (IOException e) { e.printStackTrace(); } finally { if (dis != null) { try { dis.close(); } catch (IOException e) { e.printStackTrace(); } } } } } 对象流:ObjectOutputStream(unserializable)、ObjectInputStream(serializable) public class TestSerializable { public static void main(String[] args) { TestSerializable ts = new TestSerializable(); ts.serializable(); ts.unserializable(); } public void serializable()//序列化,写入 { String filename = "F:/java/stu.txt"; Student s1 = new Student("haoyouduo",1987); FileOutputStream fis =null; ObjectOutputStream ois = null; try { fis = new FileOutputStream(filename); ois = new ObjectOutputStream(fis); ois.writeObject(s1); ois.flush(); } catch (FileNotFoundException e) { e.printStackTrace(); } catch (IOException e) { e.printStackTrace(); } finally { if(null != ois) { try { ois.close(); } catch (IOException e) { e.printStackTrace(); } } } } public void unserializable()//反序列化,读取 { String filename = "F:/java/stu.txt"; FileInputStream fis = null; ObjectInputStream ois = null; try { fis = new FileInputStream(filename); ois = new ObjectInputStream(fis); Student s = (Student)ois.readObject(); System.out.println(s); } catch (FileNotFoundException e) { e.printStackTrace(); } catch (IOException e) { e.printStackTrace(); } catch (ClassNotFoundException e) { e.printStackTrace(); } finally { if(ois != null) { try { ois.close(); } catch (IOException e) { e.printStackTrace(); } } } } } class Student implements Serializable//对象类必须实现可序列化的 { String name; int age; public Student(String name,int age) { this.name = name; this.age = age; } @Override public String toString() { return "Student [name=" + name + ", age=" + age + "]"; } } 打印流:PrintStream public class Test { public static void main(String[] args) { boolean flag = 2 >

1; if (flag) {System.out.println ("sss");} else {System.out.println ("aaa");} System.out.println ("before using printStream") / * the contents of the above part will be printed in the console * the contents of the lower part will not be printed in the console, but in the file * / String filename = "f:/java/log.txt"; FileOutputStream fos; PrintStream ps = null; try {fos = new FileOutputStream (filename) Ps = new PrintStream (fos); System.setOut (ps); System.out.println ("this will be printed in the file"); System.out.println ("after using printStream");} catch (FileNotFoundException e) {e.printStackTrace () } finally {if (ps! = null) {ps.close ();} on how to understand the data flow, object flow and print flow in the flow is shared here. I hope the above can be helpful and learn more. If you think the article is good, you can share it for more people to see.

Tags: Objects data data streams content sequences console files more parts help control good interest guys buddies articles knowledge articles but references Apple Docker Huawei Linux macOS MariaDB Microsoft MySQL NVidia OPPO Reno macOS Redmi Microsoft Xiaomi Linux