Hướng Dẫn Thực Hành Tập tin & Thư mục

Similar documents
Khối: Cao Đẳng nghề và Trung Cấp Năm 2009

Bộ môn HTMT&TT, Khoa Công Nghệ Thông Tin và TT, ĐH Cần Thơ

TÀI LIỆU THỰC HÀNH MÔN CƠ SỞ DỮ LIỆU NÂNG CAO

HƯỚNG DẪN SỬ DỤNG HỆ THỐNG CẬP NHẬT CHỨNG THƯ SỐ HOTLINE:

HƯỚNG DẪN CÀI ĐẶT PHẦN MỀM DIỆT VIRUS AVIRA

HƯỚNG DẪN CÁCH SỬ DỤNG WINDOWS MOVIE MAKER

HƯỚNG DẪN SỬ DỤNG PLESK PANEL

BÀI 1: VBA LÀ GÌ? TẠO MACRO, ỨNG DỤNG CÁC HÀM TỰ TẠO (UDF), CÀI ĐẶT ADD-INS VBA là gì?

Bộ môn MMT&TT, Khoa Công Nghệ Thông Tin và TT, ĐH Cần Thơ

ĐỌC, GHI XML VỚI C# TRONG ADO.NET --- SỬ DỤNG VISUAL STUDIO

BÀI TẬP THỰC HÀNH LẬP TRÌNH WINDOWS C#

STACK và QUEUE. Lấy STACK

Internet Protocol. Bởi: Phạm Nguyễn Bảo Nguyên

I. Hướng Dẫn Đăng Nhập:

Lab01: M V C Lưu ý: Để thực hành, các bạn phải cài Visual Studio 2013 trở lên mới hỗ trợ MVC5.

Cụ thể những công việc mà AndroidManifest.xml thực hiện: - Đặt tên cho Java package của ứng dụng.

Cài đặt và cấu hình StarWind iscsi trên Windows. iscsi SAN là gì?

Tài liệu hướng dẫn: Stored Procedure

NHẬP MÔN LẬP TRÌNH KHOA HỌC DỮ LIỆU. Bài 10: Thư viện Pandas (2)

LẬP TRÌNH WINDOWS FORM VỚI CÁC CONTROL NÂNG CAO (Các control trình bày dữ liệu dưới dạng danh sách)

Hướng dẫn cài đặt FPT

Nội dung chính của chương. Các công nghệ đĩa cứng Cấu tạo vật lý của đĩa cứng Cấu tạo logic của đĩa cứng Cài đặt đĩa cứng như thế nào?

Nhấn nút New để tạo 1 biến mới Trang 17

LÂ P TRI NH WEB ASP.NET

Chương 5. Network Layer. Phần 1 - Địa chỉ IPv4. Tài liệu : Forouzan, Data Communication and Networking

Chương 5. Network Layer 19/09/2016 1

Entity Framework (EF)

BELGIUM ONLINE APPOINTMENT

SIEMENS INDUSTRIAL NETWORKS

Online Appointment System will work better with below conditions/ Hệ thống đặt hẹn online sẽ hoạt động tốt hơn với điều kiện sau đây:

Bài tập lớn số 1. Giả lập bộ định thời

Chương 6. Transport Layer. Tài liệu : Forouzan, Data Communication and Networking

CẤU TRÚC DỮ LIỆU NÂNG CAO

GIẢI THUẬT ĐỊNH TUYẾN (ROUTING ALGORITHM)

Cập nhật ResultSet trong JDBC

Tình huống 1: PPPoE với Username và Password

TỔNG QUAN VỀ.NET VÀ C#

Kỹ thuật thu nhỏ đối tượng trong Design (Layout)

HƯỚNG DẪN SỬ DỤNG ĐẦU GHI H.264 DVR VISION VS (4CH - 8CH - 16CH)

Mô hình dữ liệu quan hệ (Relational data model)

Bài Thực hành Asp.Net - Buổi 1 - Trang: 1

Tạo Project với MPLAB

Chương 7. Application Layer. Tài liệu : Forouzan, Data Communication and Networking

PHÁT TRIỂN ỨNG DỤNG WEB

Khoa KH & KTMT Bộ môn Kỹ Thuật Máy Tính

MỤC LỤC. Giáo trình Thiết kế web Trang 1

SIMULATE AND CONTROL ROBOT

Tạo repository mới. The working tree. The staging index. Lệnh git init tạo một repository loại git. tại thư mục hiện tại: $ git init

CHƯƠNG 2: CÁC ĐẶC ĐIỂM VỀ MÔI TRƯỜNG PHÁT TRIỂN (IDE)

Phần 1: Hướng dẫn sử dụng PictureBox tạo Slide Show

Exceptions. Outline 7/31/2012. Exceptions. Exception handling is an important aspect of objectoriented. Chapter 10 focuses on:

BẢO MẬT TRONG SQL SERVER

Giáo trình này được biên dịch theo sách hướng dẫn của Sun Light. Vì là hướng dẫn kỹ thuật, trong này những thuật ngữ kỹ thuật bằng tiếng Anh tôi chỉ

Môn Học: Cơ Sở Dữ Liệu 2. Chương 3 LẤY DỮ LIỆU TỪ NHIỀU NGUỒN

HƢỚNG DẪN TRIỂN KHAI KASPERSKY - MOBILE DEVICE MANAGEMENT

Bài 10: Cấu trúc dữ liệu

Ôn tập Thiết bị mạng và truyền thông DH07TT - Lưu hành nội bộ (không sao chép dưới mọi hình thức)

TÀI LIỆU HƯỚNG DẪN SỬ DỤNG HOSTING PLESK PANEL

B5: Time to coding. Tới thư mục src/example.java và thay đổi nội dung file như sau: Mã: package at.exam;

Khối: Cao Đẳng nghề và Trung Cấp Năm 2009

Dọn "rác" Windows 7 vào dịp cuối năm

HƯỚNG DẪN QUẢN TRỊ HỆ THỐNG

Bài 13: C++11. EE3490: Kỹ thuật lập trình HK1 2017/2018 TS. Đào Trung Kiên ĐH Bách khoa Hà Nội

BÀI 6 LÀM VIỆC VỚI THÀNH PHẦN MỞ RỘNG CỦA CSS3

Qu n ả tr h ố g t p ậ tin

1 Bước 1: Test thử kit LaunchPad.

HƯỚNG DẪN SỬ DỤNG DỊCH VỤ CDN

Parallels Cloud Server 6.0

HƯỚNG DẪN SỬ DỤNG DỊCH VỤ CDN

Tröôøng Ñaïi Hoïc Baùch Khoa Tp.HCM LẬP TRÌNH MINICHAT. Bài giảng 3. Trang1. Khoa Khoa Học Và Kỹ Thuật Máy Tính

HƯỚNG DẪN SỬ DỤNG NHANH MINDJET MIND MANAGER

Time Picker trong Android

BÀI LAB ĐỔI TÊN DOMAIN

Khoa Công Nghệ Thông Tin Trường Đại Học Cần Thơ. Những hỗ trợ tiên tiến khác của SQL. Đỗ Thanh Nghị

Tính kế thừa-2. Bởi: Thanh Hiền Vũ. Định nghĩa lại các thành viên lớp cơ sở trong một lớp dẫn xuất:

2.4. GIAO THỨC MQTT Các khái niệm cơ bản MQTT được phát triển bởi IBM và Eurotech, phiên bản mới nhất là MQTT 3.1 MQTT (Giao vận tầm xa) là

Lecture 12. Trees (1/2) Nội dung bài học:

BÀI 6a LẬP TRÌNH ĐA TUYẾN (MULTI THREAD)

LAB IP SLA Bài 1. Bùi Quốc Kỳ ***

BÀI THỰC HÀNH SỐ 1. Quản trị tập tin: 1/ Tạo các thư mục sau: Bài tập thực hành linux Linuxlab. bt1 bt11 bt111. bt121. bt12. bh1 bh11 bh111.

3 cách Backup Profile trong Windows 7

Đa ngôn ngữ (Internationalization) trong Servlet

dụng một chính sách, điều này giúp dễ dàng quản lý và cung cấp tính năng Load Balancing (cân bằng tải) phục vụ tốt hơn các yêu cầu của tổ chức.

Tìm hiểu Group Policy Object và các ví dụ

Kích hoạt phương thức xa (RMI- Remote Method Invocation )

Các kiểu định địa chỉ họ MSC-51

LINQ TO SQL & ASP.NET

Bài tập căn bản Visual Basic.Net Vòng lặp. txtn. txtketqua. btntinh. txtn. txtketqua. btntinh. Trang 1

HỆ THỐNG FILE TRÊN PC

BÀI GIẢNG CHƯƠNG 3 GIAO TIẾP KẾT NỐI SỐ LIỆU

THAO TÁC VỚI TẬP TIN TRONG C++

GV: Phạm Đình Sắc or

Phần 2. SỬ DỤNG POWERPOINT ĐỂ CHUẨN BỊ NỘI DUNG TRÌNH BÀY

Bài thực hành số 2 QUYỀN và ROLE

BÀI 4 GIAO TIẾP GIỮA CÁC TIẾN TRÌNH TRONG LINUX

NHÚNG. Vi ñiều khiển BM Kỹ Thuật ðiện Tử - ðh Bách Khoa TP.HCM 2

KIẾN TRÚC MÁY TÍNH. Giảng viên: ThS. Phan Thanh Toàn. v

Bài 7: Các cấu trúc điều khiển

NỘI DUNG ÔN TẬP MÔN HỆ CƠ SỞ DỮ LIỆU

Google Search Engine. 12/24/2014 Google Search Engine 1

Transcription:

Hướng Dẫn Thực Hành Tập tin & Thư mục 1 Thư mục: - Lớp Directory chứa phương thức dành cho việc tạo, di chuyển, duyệt thư mục. - Lớp DirectoryInfo là lớp tương tự như lớp Directory. Nó cung các tất cả các phương thức mà lớp Directory có đồng thời bổ sung nhiều phương thức hữu ích hơn cho việc duyệt cấu trúc cây thư mục. Ví dụ: duyệt các thư mục con string thedirectory = @"D:\luanvan1"; // duyệt thư mục và hiển thị ngày truy cập gần nhất // và tất cả các thư mục con DirectoryInfo dir = new DirectoryInfo(theDirectory); t.exploredirectory(dir); // hoàn tất. in ra số lượng thống kê Console.WriteLine("\n\n0 directories found.\n",dircounter); // với mỗi thư mục tìm thấy, nó gọi chính nó private void ExploreDirectory(DirectoryInfo dir) indentlevel++; // cấp độ thư mục // định dạng cho việc trình bày for (int i = 0; i < indentlevel; i++) Console.Write(" "); // hai khoảng trắng cho mỗi cấp // in thư mục và ngày truy cập gần nhất Console.WriteLine("[0] 1 [2]\n", indentlevel, dir.name, dir.lastaccesstime); // lấy tất cả thư mục con của thư mục hiện tại // đệ quy từng thư mục DirectoryInfo[] directories = dir.getdirectories( ); foreach (DirectoryInfo newdir in directories) dircounter++; //tăng biến đếm ExploreDirectory(newDir);

indentlevel--; // giảm cấp độ thư mục // các biến thành viên tĩnh cho việc thống kê và trình bày static int dircounter = 1; static int indentlevel = -1; // so first push = 0 2 Tập tin Thư viện.net cung cấp hai lớp File và FileInfo tương tự như với trường hợp thư mục. Ví dụ: Chỉnh sửa tập tin string thedirectory = @"D:\luanvan1"; DirectoryInfo dir = new DirectoryInfo(theDirectory); t.exploredirectory(dir); Console.WriteLine("\n\n0 files in 1 directories found.\n", filecounter, dircounter); private void ExploreDirectory(DirectoryInfo dir) indentlevel++; for (int i = 0; i < indentlevel; i++) Console.Write(" "); Console.WriteLine("[0] 1 [2]\n", indentlevel, dir.name, dir.lastaccesstime); // lấy tất cả các tập tin trong thư mục và // in tên, ngày truy cập gần nhất, kích thước của chúng FileInfo[] filesindir = dir.getfiles( ); foreach (FileInfo file in filesindir) // lùi vào một khoảng phía dưới thư mục // phục vụ việc trình bày for (int i = 0; i < indentlevel+1; i++) Console.Write(" "); // hai khoảng trắng cho mỗi cấp Console.WriteLine("0 [1] Size: 2 bytes",file.name, file.lastwritetime, file.length); filecounter++; DirectoryInfo[] directories = dir.getdirectories( ); foreach (DirectoryInfo newdir in directories) dircounter++; ExploreDirectory(newDir); indentlevel--;

// các biến tĩnh cho việc thống kê và trình bày static int dircounter = 1; static int indentlevel = -1; static int filecounter = 0; 3 Đọc và ghi dữ liệu Đọc và ghi dữ liệu là nhiệm vụ chính của các luồng(stream). Stream hỗ trợ cả hai cách đọc ghi đồng bộ hay bất đồng bộ..net Framework cung cấp sẵn nhiều lớp thừa kế từ lớp Stream, bao gồm FileStream, MemoryStream và NetworkStream. Ngoài ra còn có lớp BufferedStream cung cấp vùng đệm xuất nhập được dùng thêm với các luồng khác. Tập tin nhị phân: Lớp Stream có rất nhiều phương thức nhưng quan trọng nhất là năm phương thức Read(), Write(), BeginRead(), BeginWrite() và Flush(). Stream inputstream = File.OpenRead(@"C:\test\source\test1.cs"); Stream outputstream = File.OpenWrite(@"C:\test\source\test1.bak"); Ví dụ: Cài đặt việc đọc và ghi tập tin nhị phân const int SizeBuff = 1024; public static void Main( ) Tester t = new Tester( ); t.run( ); private void Run( ) Stream inputstream = File.OpenRead(@"C:\test\source\test1.cs"); // ghi vào tập tin này Stream outputstream = File.OpenWrite(@"C:\test\source\test1.bak"); // tạo vùng đệm chứa dữ liệu byte[] buffer = new Byte[SizeBuff]; int bytesread; // sau khi đọc dữ liệu xuất chúng ra outputstream while ( (bytesread =inputstream.read(buffer,0,sizebuff)) > 0 ) outputstream.write(buffer,0,bytesread); // đóng tập tin trước khi thoát inputstream.close( ); outputstream.close( );

Luồng có vùng đệm Lớp BufferedStream là cài đặt cho luồng có vùng đệm. Để tạo một luồng có vùng đệm trước tiên ta vẫn tạo luồng Stream như trên Stream inputstream = File.OpenRead(@"C:\test\source\folder3.cs"); Stream outputstream = File.OpenWrite(@"C:\test\source\folder3.bak"); Sau đó truyền các luồng này cho hàm đựng của BufferedStream BufferedStream bufferedinput = new BufferedStream(inputStream); BufferedStream bufferedoutput = new BufferedStream(outputStream); Từ đây ta sử dụng bufferedinput và bufferedoutput thay cho inputstream và outputstream. Cách sử dụng là như nhau: cũng dùng phương thức Read() và Write() while((bytesread = bufferedinput.read(buffer,0,size_buff))>0 ) bufferedoutput.write(buffer,0,bytesread); Ghi chú: nến dùng hàm Flush() để chắc chắn dữ liệu đã được chuyển từ buffer lên tập tin. bufferedoutput.flush( ); Ví dụ: Cài đặt luồng có vùng đệm const int SizeBuff = 1024; t.run(); private void Run() // tạo một luồng nhị phân Stream inputstream = File.OpenRead(@"C:\test\source\folder3.cs"); Stream outputstream = File.OpenWrite(@"C:\test\source\folder3.bak"); // tạo luồng vùng đệm kết buộc với luồng nhị phân BufferedStream bufferedinput = new BufferedStream(inputStream); BufferedStream bufferedoutput =new BufferedStream(outputStream); byte[] buffer = new Byte[SizeBuff]; int bytesread; while ((bytesread = bufferedinput.read(buffer, 0, SizeBuff)) > 0) bufferedoutput.write(buffer, 0, bytesread);

bufferedoutput.flush(); bufferedinput.close(); bufferedoutput.close(); Làm việc với tập tin văn bản Đối với các tập tin chỉ chứa văn bản, sử dụng hai luồng StreamReader và StreamWriter cho việc đọc và ghi. Dùng phương thức OpenText() của lớp FileInfo. FileInfotheSourceFile = new FileInfo (@"C:\test\source\test1.cs"); StreamReader stream = thesourcefile.opentext( ); Sau đó đọc từng dòng văn bản của tập tin do text = stream.readline( ); while (text!= null); Để tạo đối tượng StreamWriter ta truyền cho hàm đường dẫn tập tin StreamWriter writer = new StreamWriter(@"C:\test\source\folder3.bak",false); tham số thứ hai thuộc kiểu bool, nếu tập tin đã tồn tại, giá trị true sẽ ghi dữ liệu mới vào cuối tập tin, giá trị false sẽ xóa dữ liệu cũ, dữ liệu mới sẽ ghi đè dữ liệu cũ. Ví dụ: Đọc và ghi tập tin văn bản t.run(); private void Run() // mở một tập tin FileInfo thesourcefile = new FileInfo(@"C:\test\source\test.cs"); // tạo luồng đọc văn bản cho tập tin StreamReader reader = thesourcefile.opentext( ); // tạo luồng ghi văn bản cho tập tin xuất StreamWriter writer = new StreamWriter( @"C:\test\source\test.bak",false); // tạo một biến chuỗi lưu giữ một dòng văn bản string text; // đọc toàn bộ tập tin theo từng dòng // ghi ra màn hình console và tập tin xuất do text = reader.readline( ); writer.writeline(text);

Console.WriteLine(text); while (text!= null); // đóng tập tin reader.close( ); writer.close( ); Khi thực thi chương trình nội dung tập tin nguồn được ghi lên tập tin mới đồng thời xuất ra màn hình console. Bài tập: 1. Xây dựng chương trình minh họa các câu lệnh sau: - dir: hiển thị danh sách các tệp tin và thư mục hiện hành(có tùy chọn như /w: hiển thị dạng cột) - md: tạo thư mục - rd: xóa thư mục - type: hiển thị nội dung tệp tin