Sau Khi Bị Đuổi Ra Khỏi Nhà Tra Công Quỳ Xin Tôi Quay Đầu Lại

Chương 152: Rơi Vào Vực Sâu






(Đọc chỗ khác không phải w.a.t.t.p.a.d thì chạy deadline trước điiii)
Bài 1: (1) Hiện thực hàm boolean delete(String path) xóa tất cả những gì có thể.

Kết quả trả true nếu xóa thành công, false khi không xóa thành côn
Mở rộng: Chỉ xóa files giữa nguyên cấu trúc thư mục
Bài 2: (1) Hiện thực hàm void findAll(String path, String ext1, String ext2,...) tìm và hiển thị đường dẫn đầy đủ file/folder chỉ định bởi path có phần mở rộng quy định bởi ext1, ext2,..., extn;
Bài 3: (2) Hiện thực hàm void [List tìm và hiển thị đường dẫn đầy đủ file chỉ định bởi path có chứa chuỗi quy định bởi pattern; trong pattern có chứa nhiều nhất 1 "*" đại diện cho 1 nhóm ký tự ("*" có thể đứng đầu, cuối)
Bài 3 (Advanced): Viết hàm hiển thị cấu trúc cây của thư mục void dirTree(String path); dùng các ký tự + - | để vẽ cấu trúc cây.

Cần hiển thị được cấp con hay ngang cấp,...!
Bài 4 (Advanced): Viết hàm tính và hiển thị dung lượng theo cấu trúc cây thư mục void dirStat(String path)
Bài 6: Hiện thực hàm void deleteAll(String path, String ext1, String ext2,...) tìm và xóa file/folder chỉ định bởi path có phần mở rộng quy định bởi ext1, ext2,..., extn;

Bài 7: Hiện thực hàm void copyAll(String sDir, String dDir String ext1, String ext2,...) copy từ thư mục nguồn sDir vào thư mục đích dDir tất cả các file có phần mở rộng quy định bởi ext1, ext2,..., extn;
Phần 1 IO
Bài 8: (3) Viết CT copy/move file dùng byte array kết hợp với BIS, BOS:
boolean fileCopy(String sFile, String destFile, boolean moved);
Bài 9: Viết CT copy/move thư mục dùng byte array kết hợp với BIS, BOS:
boolean folderCopy(String sFolder, String destFolder, boolean moved);
Bài 10: (3) Viết CT File Spliter chia 1 file thành nhiều phần theo dung lượng hoặc số lượng.

Viết CT File Joiner ghép các file thành phần thành file ban đầu.

Bài 11: (4) Viết CT Pack/Unpack lưu nguyên thư mục vào 1 file duy nhất, trích rút từng file cụ thể (tương tự zip nhưng không nén) (giai đoạn 1 giả sử thục mục không chứa thư mục con và restore nguyên cả thư mục)
Bài 12: Viết ứng dụng String fileType(String fname) xác định file bất kỳ có phải là: zip, rar, doc,...!(Kiểu file)
Bài 13: (4) Viết CT lưu/Đọc danh sách sinh viên xuống file nhị phân (Lưu từng thuộc tính)
Bài 14: (5) Viết chương trình hỗ trợ đọc/thay đổi thông tin trực tiếp của phần tử thứ n bất kỳ mà không cần đọc các dữ liệu trước đó
Bài 15: (6) Viết CT Import/Export danh sách sinh viên from/to text file với bảng mã cho trước.

Export/Import dữ liệu này vào excel để xử lý và ngược lại
Phần 2 Socket
Bài 16: (7) Viết chương trình client/server copy file/folder qua mạng.

Đích và nguồn chỉ định trực tiếp trong mã nguồn của client/server
Bài 17: (7) Viết CT client/server upload file lên server.

Người dùng tương tác với clietn qua console với cú pháp lệnh: copy source_file dest_file
Bài 18: Viết CT client/server download file từ server.


Người dùng tương tác với client qua console với cú pháp lệnh: get source_file dest_file
Bài 19: (8) Viết server hỗ trợ các phép tính cơ bản (+-*/) client tương tác với server bằng giao thức TCP thông qua các dòng văn bản.

Người dùng nhập lệnh trên client có dạng:
1 + 2 rồi nhấp enter, client gửi dòng dữ liệu tới server, server trả về kết quả có dạng:
1 + 2 = 3; xử lý các ngoại lệ các toán hạng không phải là số và phép chi cho 0.

Bài 20:Viết CT client/server ra cứu thông tin sinh viên qua mạng.

Dữ liệu trên server lưu vào arraylist; Người dùng tương tác với client qua console với cú pháp lệnh:
findByName name
findByAge age
findByScore score
Bài 21: Viết CT client/server ra cứu thông tin sinh viên qua mạng có hỗ trợ đăng nhập tương tự POP3.

Dữ liệu trên server lưu vào arraylist; Người dùng tương tác với client qua console với cú pháp lệnh:
user user_name
pass password
Sau khi đăng nhập thành công có thể thực hiện các thao tác:
findByName name
findByAge age
findByScore score
Bài 22: Viết lại bài tập Echo sử dụng UDP
Bài 23:(9) Sử dụng UDP Viết CT client/server ra cứu thông tin sinh viên qua mạng.


Dữ liệu trên server lưu vào arraylist; Người dùng tương tác với client qua console với cú pháp lệnh:
findByName name
findByAge age
findByScore score
Phần 3 CSDL
Bài 24:(10) Bài tập tra cứu thông tin sinh viên với dữ liệu trên server dùng access hoặc postgresql, kết nối thông qua TCP.

Viết CT client/server ra cứu thông tin sinh viên qua mạng có hỗ trợ đăng nhập tương tự POP3.

Dữ liệu trên server lưu trong CSDL; Người dùng tương tác với client qua console với cú pháp lệnh:
user user_name
pass password
Sau khi đăng nhập thành công có thể thực hiện các thao tác:
findByName name
findByAge age
findByScore score
Phần 4 RMI
Bài 25:(11) Bài tập copy, tra cứu thông tin dùng RMI.