一、java.io.DataOutputStream;數據位元組輸出流 1.可以將記憶體中的“int i = 2;"寫入到硬碟文件裡面,寫進去的不是字元串,寫進去的是二進位數據,可以帶有類型。 package com.bjpowernode.java_learning; import java.io.* ...
一、java.io.DataOutputStream;數據位元組輸出流
1.可以將記憶體中的“int i = 2;"寫入到硬碟文件裡面,寫進去的不是字元串,寫進去的是二進位數據,可以帶有類型。
package com.bjpowernode.java_learning; import java.io.*; public class D101_1_DataOutputStream { public static void main(String[] args) throws IOException{ //創建數據位元組輸出流 String address = "C:\\\\Users\\\\lenovo1\\\\Workspaces\\\\MyEclipse CI\\\\Java_learning\\\\src\\\\com\\\\bjpowernode\\\\java_learning\\\\temp1.txt"; DataOutputStream dos = new DataOutputStream(new FileOutputStream(address)); //準備數據 byte b = 10; short s = 11; int i = 12; long l = 13; float f = 3.2f; double d = 2.3; boolean flag = false; char c = 'a'; //寫入 dos.writeByte(b); dos.writeShort(s); dos.writeInt(i); dos.writeLong(l); dos.writeFloat(f); dos.writeDouble(d); dos.writeBoolean(flag); dos.writeChar(c); //刷新 dos.flush(); //寫進去的內容是二進位文件,我們使用文本打開都是一堆亂碼 //關閉 dos.close(); //創建輸入流 DataInputStream dis = new DataInputStream(new FileInputStream(address)); //讀 //註意:要使用該流讀取數據,必須提前知道該文件中的數據存儲格式,順序。 byte b1 = dis.readByte(); short s1 = dis.readShort(); int i1 = dis.readInt(); long l1 = dis.readLong(); float f1 = dis.readFloat(); double d1 = dis.readDouble(); boolean flag1 = dis.readBoolean(); char c1 = dis.readChar(); System.out.println(b1); System.out.println(s1); System.out.println(i1); System.out.println(l1); System.out.println(f1); System.out.println(d1); System.out.println(flag1); System.out.println(c1); //用途:有點像加密文件,多見於電信行業,我們傳輸數據,然後告知對方我們的格式以及數據順序,對方纔可以解析出來 //關閉 dis.close(); } }
二、PrintStream\PrintWriter
1.java.io.PrintStream;標準的輸出流,預設列印到控制台,以位元組的方式。
package com.bjpowernode.java_learning; import java.io.*; import java.util.Date; import java.text.SimpleDateFormat; public class D101_2_PrintStream { public static void main(String[] args) throws Exception { System.out.println("HelloWorld"); PrintStream ps = System.out; ps.println("JAVA"); String address = "C:\\\\Users\\\\lenovo1\\\\Workspaces\\\\MyEclipse CI\\\\Java_learning\\\\src\\\\com\\\\bjpowernode\\\\java_learning\\\\temp1.txt"; //setOut方法可以改變輸出方向,PrintStream(FileOutputStream f)可以接受位元組輸出流 System.setOut(new PrintStream(new FileOutputStream(address))); //再次輸出 System.out.print("HAHA"); //通常使用上述方法來記錄日誌 SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss SSS"); System.out.println(sdf.format(new Date())); m1(); System.out.println(sdf.format(new Date())); } public static void m1() { System.out.println("m1 method execute"); } }
三、源碼:
D101_1_DataOutputStream.java
D101_2_PrintStream.java
https://github.com/ruigege66/Java/blob/master/D101_1_DataOutputStream.java
https://github.com/ruigege66/Java/blob/master/D101_2_PrintStream.java
2.CSDN:https://blog.csdn.net/weixin_44630050
3.博客園:https://www.cnblogs.com/ruigege0000/
4.歡迎關註微信公眾號:傅里葉變換,個人公眾號,僅用於學習交流,後臺回覆”禮包“,獲取大數據學習資料