緩沖流原理
緩沖流原理
字節(jié)緩沖輸出流
package com.mujiachao.huanchongliu;
import java.io.BufferedOutputStream;
import java.io.FileOutputStream;
import java.io.IOException;
public class BufferOut {
public static void main(String[] args) throws IOException {
FileOutputStream fileOutputStream = new FileOutputStream("F:\\電影\\111\\F.txt");
BufferedOutputStream bufferedOutputStream = new BufferedOutputStream(fileOutputStream);
bufferedOutputStream.write("我把數(shù)據(jù)通過字節(jié)緩沖輸出流寫入硬盤".getBytes());
bufferedOutputStream.close();
}
}
字節(jié)緩沖輸入流
字節(jié)緩沖輸入流
package com.mujiachao.huanchongliu;
import java.io.BufferedInputStream;
import java.io.FileInputStream;
import java.io.IOException;
public class BufferIn {
public static void main(String[] args) throws IOException {
FileInputStream fileInputStream = new FileInputStream("F:\\電影\\111\\F.txt");
// BufferedInputStream bufferedInputStream = new BufferedInputStream(fileInputStream);
BufferedInputStream bufferedInputStream = new BufferedInputStream(fileInputStream,2048);
// int len=0;
// while ((len=bufferedInputStream.read())!=-1){
// System.out.println(len);
// }
int len=0;
byte[] bytes=new byte[2048];
while ((len=bufferedInputStream.read(bytes))!=-1){
System.out.println(new String(bytes));
}
bufferedInputStream.close();
}
}
緩沖流效率測(cè)試
package com.mujiachao.huanchongliu;
import java.io.*;
public class CopyCeSu {
public static void main(String[] args) throws IOException {
long l = System.currentTimeMillis();
FileOutputStream fileOutputStream = new FileOutputStream("F:\\電影\\111\\JavaEE開發(fā)的顛覆者 Spring Boot實(shí)戰(zhàn) 完整版.pdf");
FileInputStream fileInputStream = new FileInputStream("C:\\Users\\Administrator\\Desktop\\JavaEE開發(fā)的顛覆者 Spring Boot實(shí)戰(zhàn) 完整版.pdf");
BufferedInputStream bufferedInputStream = new BufferedInputStream(fileInputStream);
BufferedOutputStream bufferedOutputStream = new BufferedOutputStream(fileOutputStream);
int len=0;
byte[] bytes=new byte[102400];
while ((len=bufferedInputStream.read(bytes))!=-1){
bufferedOutputStream.write(len);
}
bufferedOutputStream.close();
bufferedInputStream.close();
System.out.println(System.currentTimeMillis()-l+"毫秒");
}
}
字符緩沖輸出流 bufferedWriter.newLine();換行
符緩沖輸出流
使用步驟
package com.mujiachao.huanchongliu;
import java.io.BufferedWriter;
import java.io.FileWriter;
import java.io.IOException;
public class BufferWriter {
public static void main(String[] args) throws IOException {
FileWriter fileWriter = new FileWriter("F:\\電影\\111\\a.txt");
BufferedWriter bufferedWriter = new BufferedWriter(fileWriter);
for (int i = 0; i < 10; i++) {
bufferedWriter.write("字符緩沖輸出流");
bufferedWriter.newLine();
}
bufferedWriter.close();
}
}
字符緩沖輸入流 bufferedReader.readLine() 讀取一行
字符緩沖輸入流
步驟
package com.mujiachao.huanchongliu;
import java.io.BufferedReader;
import java.io.FileReader;
import java.io.IOException;
public class BufferReader {
public static void main(String[] args) throws IOException {
BufferedReader bufferedReader = new BufferedReader(new FileReader("F:\\電影\\111\\a.txt"));
String s;
while ((s=bufferedReader.readLine())!=null){
System.out.println(s);
}
bufferedReader.close();
}
}
練習(xí),對(duì)文本內(nèi)容進(jìn)行排序
對(duì)文本內(nèi)容進(jìn)行排序
package com.mujiachao.huanchongliu;
import java.io.*;
import java.util.HashMap;
public class LianXi {
public static void main(String[] args) throws IOException {
HashMap<String, String> objectObjectHashMap = new HashMap<>();
FileReader fileReader = new FileReader("F:\\電影\\111\\in.txt");
FileWriter fileWriter = new FileWriter("F:\\電影\\111\\out.txt");
BufferedReader bufferedReader = new BufferedReader(fileReader);
BufferedWriter bufferedWriter = new BufferedWriter(fileWriter);
String s;
while ((s=bufferedReader.readLine())!=null){
String[] split = s.split("\\.");
objectObjectHashMap.put(split[0],split[1]);
}
for (String key:objectObjectHashMap.keySet()) {
s=key+"."+objectObjectHashMap.get(key);
bufferedWriter.write(s);
bufferedWriter.newLine();
}
bufferedWriter.close();
bufferedReader.close();
}
}