By GokiSoft.com|
15:52 25/03/2020|
Java Advanced
Share Code - Bài giảng nén file & giải nén File - T1907A
Video hướng dẫn bài giảng
/*
* To change this license header, choose License Headers in Project Properties.
* To change this template file, choose Tools | Templates
* and open the template in the editor.
*/
package java2.lession3;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
import java.util.zip.DeflaterInputStream;
/**
*
* @author Diep.Tran
*/
public class Main {
public static void main(String[] args) throws FileNotFoundException, IOException {
//Thuc hien nen file data.txt
String filename = "data.txt";
//file data.txt => du lieu thuong => nen bang thu vien java
//tao 1 connection doc du lieu tu file data.txt
FileInputStream fis = new FileInputStream(filename);
//thanh thu vien co nhiem vu gi
//doc du lieu tu fis => chuyen sang dis => du lieu dau ra se dc nen luon
DeflaterInputStream dis = new DeflaterInputStream(fis);
//lu du lieu sau khi nen tu dis => sang file moi
String zipFileName = "data.def";
FileOutputStream fos = new FileOutputStream(zipFileName);
//thuc hien qua trinh
//doc du lieu tho (fis) -> nen boi dis => luu xuong file (fos)
int code;
while((code = dis.read()) != -1) {
fos.write(code);
}
//xong qua trinh nen va luu file
//dong ket noi
fos.close();
dis.close();
fis.close();
System.out.println("Ket thuc qua trinh nen file");
//Co che cua doan code tren
//File data (source ko nén => dùng bộ dọc dữ liệu (fis : FileInputStream)
//=> Nén bởi thư viện dis : DeflaterInputStream -> lưu xuông file bởi thư viên
//FileOutputStream
}
}
Phần 1. Bài cũ
- Giải đáp các vấn đề của buổi trước
=>Files ???
- Hướng dẫn chữa bài tập
=> Chữa bài tập thì hợp lý hơn
Phần 2. Bài mới
- Nén & giải nén File
Lib => nen du lieu
Nhiem vu Nen data => du lieu nho di
=> thuan tien gui data qua internet
Chu y:
Nen File => du lieu text
binary (image, video, audio) => nen ko co tac
dung j dau
neu muon nen File (binary) => chi co giai phap cu the
ko co giai phap chung
image (bitmap => jpg, jpeg, ...)
audio => giam frame * video => giam chat luong di
(code = dis.read()) != -1
=> dis.read()
=> đọc dữ liệu sau khi nén
fos.write(code); => lưu xuông file data.def
Phần vừa rồi các bạn học các nén FIle
Tiếp theo chung ta tìm hiểu cách giải nén File
=> Theo mô hình đó các bạn code là được
=> Quan sát kỹ:
Quá trình nén và giải nén đều xuất phát từ
bạn đọc dữ liệu
=> các bạn cũng có thể lam điều ngược lại
=> Tất cả quá trình nén và giải nến từ phía
ghi => các bạn sử dụng các bô thư viện sau
Mô hình này thầy đang mô tả quá trình
- Nén => lúc đoc dữ liệu từ file
- Giải nén => lúc đọc dữ liệu từ file
Quá trình lúc ghi dữ liệu
- DeflaterOutputStream
- InflaterOutputStream
- Thread (Kha hay)
- Basic => Dễ
- Advanced => Sync => tập chung và thực hành nhiều hơn
Tags:
Phản hồi từ học viên
5
(Dựa trên đánh giá ngày hôm nay)