- 在人人都會編程的時代,老程序員的價值在哪裏?編的更熟練嗎?NONONO,必須和新人從不一樣維度競爭。
- 跟包容性強的人聊天感受就是好
- 清醒的努力+選擇,在3-5年成爲業界80分水準的程序員
- 清醒的努力+選擇,在一個方向專研,用10年時間成爲99分的技術專家兼程序員。
- 清醒的努力+選擇,用10年時間成爲一個懂金融、懂營銷、會寫做、會演講同時又「剛好會編程「的人。
- 大膽列計劃【JavaEE、JavaWeb入行,往大數據方向轉】、JavaScript【業餘學習,應對物聯網】、Python【業餘學習,應對人工智能,並研究研究量化金融】的專家。
緩衝思想java
BufferedInputStream程序員
BufferedOutputStream編程
package com.test.demo001; import java.io.BufferedInputStream; import java.io.BufferedOutputStream; import java.io.FileInputStream; import java.io.FileNotFoundException; import java.io.FileOutputStream; import java.io.IOException; public class Demo009 { public static void main(String[] args) throws IOException{ //demo01(); FileInputStream fis = new FileInputStream("20.avi"); FileOutputStream fos = new FileOutputStream("copy.avi"); BufferedInputStream bis = new BufferedInputStream(fis); BufferedOutputStream bos = new BufferedOutputStream(fos); int b; while((b = bis.read())!= -1){ bos.write(b); } bis.close(); bos.close(); } private static void demo01() throws FileNotFoundException, IOException { FileInputStream fis = new FileInputStream("cccccc.txt"); FileOutputStream fos = new FileOutputStream("bbbbbb.txt"); byte[] arr = new byte[2]; int len; //讀到的有效字符個數 while((len = fis.read(arr))!= -1){ fos.write(arr,0,len); } fis.close(); fos.close(); } }
public class Demo009 { public static void main(String[] args) throws IOException{ BufferedInputStream bis = new BufferedInputStream(new FileInputStream("20.avi")); BufferedOutputStream bos = new BufferedOutputStream(new FileOutputStream("copy.avi")); int b; while((b = bis.read())!= -1){ bos.write(b); } bis.close(); bos.close(); }
字節流讀中文的問題:可能出現讀到半個中文亂碼的狀況數組
package com.test.demo001; import java.io.BufferedInputStream; import java.io.BufferedOutputStream; import java.io.FileInputStream; import java.io.FileNotFoundException; import java.io.FileOutputStream; import java.io.IOException; public class Demo009 { public static void main(String[] args) throws IOException{ FileInputStream fis = new FileInputStream("b.txt"); byte[] arr = new byte[2]; int len; while((len = fis.read(arr))!= -1){ System.out.println(new String(arr,0,len)); } } }
字節流寫出中文的問題:ide
package com.test.demo001; import java.io.FileOutputStream; import java.io.IOException; public class Demo009 { public static void main(String[] args) throws IOException{ FileOutputStream fos = new FileOutputStream("b.txt"); fos.write("你好世界".getBytes()); fos.write("\r\n".getBytes()); fos.write("你好世界".getBytes()); } }
package com.test.demo001; import java.io.FileInputStream; import java.io.FileOutputStream; import java.io.IOException; public class Demo009 { public static void main(String[] args) throws IOException{ FileInputStream fis = null; FileOutputStream fos = null; try { fis = new FileInputStream("b.txt"); fos = new FileOutputStream("c.txt"); int b; while((b = fis.read())!= -1){ fos.write(b); } } finally { try { if(fis != null){ fis.close(); } } finally { fos.close(); } } } }
package com.test.demo001; import java.io.FileInputStream; import java.io.FileOutputStream; import java.io.IOException; public class Demo009 { public static void main(String[] args) throws IOException{ try( FileInputStream fis = new FileInputStream("b.txt"); FileOutputStream fos = new FileOutputStream("c.txt"); ){ int b; while((b = fis.read())!= -1){ fos.write(b); } } } } class MyClose implements AutoCloseable { @Override public void close() throws Exception { System.out.println("我自動關閉了"); } }
package com.test.demo001; import java.io.BufferedInputStream; import java.io.BufferedOutputStream; import java.io.FileInputStream; import java.io.FileOutputStream; import java.io.IOException; public class Demo009 { public static void main(String[] args) throws IOException{ BufferedInputStream bis = new BufferedInputStream(new FileInputStream("dd.jpeg")); BufferedOutputStream bos = new BufferedOutputStream(new FileOutputStream("ee.jpeg")); int len; while((len = bis.read())!= -1){ bos.write(len ^ 123); } bis.close(); bos.close(); } }
package com.test.demo001; import java.io.BufferedInputStream; import java.io.BufferedOutputStream; import java.io.File; import java.io.FileInputStream; import java.io.FileOutputStream; import java.io.IOException; import java.util.Scanner; public class Demo009 { public static void main(String[] args) throws IOException{ File file = getFile(); BufferedInputStream bis = new BufferedInputStream(new FileInputStream(file)); BufferedOutputStream bos = new BufferedOutputStream(new FileOutputStream(file.getName())); int len; while((len = bis.read())!= -1){ bos.write(len); } bis.close(); bos.close(); } public static File getFile(){ Scanner sc = new Scanner(System.in); System.out.println("請輸入一個文件路徑"); while(true){ String line = sc.nextLine(); File file = new File(line); if(!file.exists()){ System.out.println("錄入的路徑文件不存在"); } else if(file.isDirectory()) { System.out.println("錄入的路徑是文件夾,請從新輸入"); } else { return file; } } } }
package com.test.demo001; import java.io.FileOutputStream; import java.io.IOException; import java.util.Scanner; public class Demo009 { public static void main(String[] args) throws IOException{ Scanner sc = new Scanner(System.in); FileOutputStream fos = new FileOutputStream("text.txt"); System.out.println("請輸入數據:"); while(true){ String line = sc.nextLine(); if("quit".equals(line)){ break; } fos.write(line.getBytes()); fos.write("\r\n".getBytes()); } } }