Bài giảng Lập trình C: File và IO

ppt 12 trang phuongnguyen 2630
Bạn đang xem tài liệu "Bài giảng Lập trình C: File và IO", để tải tài liệu gốc về máy bạn click vào nút DOWNLOAD ở trên

Tài liệu đính kèm:

  • pptbai_giang_lap_trinh_c_file_va_io.ppt

Nội dung text: Bài giảng Lập trình C: File và IO

  1. File và IO 1. Truy xuất thông tin File và thư mục 1.1. Truy xuất và sửa đổi các thông tin của một file hay một thư mục 1.2. Chép, di chuyển, xóa file hay thư mục. 2. Đọc và ghi dữ liệu với File 2.1 Đọc, ghi file văn bản. 2.2 Đọc, ghi file nhị phân. 2.3: Đọc ghi file khả tuần tự hóa Viet Anh Phan – K12 1
  2. 1. Truy xuất thông tin File, Thư mục - Tạo đối tượng System.IO.FileInfo cho file hay đối tượng System.IO.DirectoryInfo cho thư mục. Sau đó, truyền đường dẫn tới file hay thư mục đó trong phương thức khởi dựng. Các thông tin cần thiết sẽ được truy xuất thông qua các thuộc tính của đối tượng. - namespace System.IO chứa các lớp cho phép thao tác với file và thư mục. Viet Anh Phan – K12 2
  3. Các thành viên của FileInfo và DirectoryInfo Thành viên Thuộc lớp Mô tả Exists FileInfo và Trả về true hay false, tùy thuộc vào file hay DirectoryInfo thư mục có tồn tại ở đường dẫn được chỉ định hay không. Attributes FileInfo và Trả về một hoặc nhiều giá trị thuộc kiểu liệt DirectoryInfo kê System.IO.FileAttributes, cho biết các thuộc tính của file hay thư mục. FullName, Name, FileInfo và Trả về một chuỗi chứa tên đầy đủ, tên thư và Extension DirectoryInfo mục hay tên file (cùng phần mở rộng), và phần mở rộng. Length FileInfo Trả về kích thước file (tính theo byte). Viet Anh Phan – K12 3
  4. Các thành viên của FileInfo và DirectoryInfo Thành viên Thuộc lớp Mô tả DirectoryName và DirectoryInfo DN: Tên thư mục cha, Directory: đối tượng Directory DirectoryInfo mô tả thư mục cha. CreateSubdirectory DirectoryInfo Tạo thư mục bên trong thư mục được mô tả bởi đối tượng DirectoryInfo GetDirectories DirectoryInfo Trả về mảng các đối tượng DirectoryInfo, mỗi đối tượng mô tả một thư mục con trong thư mục này GetFiles DirectoryInfo Trả về mảng các đối tượng FileInfo, mỗi đố tượng mô tả một file trong thư mục này. Viet Anh Phan – K12 4
  5. Thiết lập các thuộc tính của File, thư mục - Các thuộc tính của File, thư mục + archive, system, hidden, read-only, compressed, và encrypted - Sử dụng thuộc tính Attributes - Ví dụ FileInfo file = new FileInfo("data.txt"); file. Attributes = FileAttributes.ReadOnly Viet Anh Phan – K12 5
  6. Sao chép, chuyển, xóa File, thư mục - CopyTo • Create và CreateText: Create tạo file được chỉ định và trả về một đối tượng FileStream dùng để ghi ra file. CreateText tạo file và trả về đối tượng StreamWriter gói lấy stream. - Open, OpenRead,OpenText, và OpenWrite - Delete - MoveTo : Chuyển File/thư mục, có thể dùng để đổi tên file/ thư mục Viet Anh Phan – K12 6
  7. 2. Đọc ghi file - Files và Streams: + file là nơi lưu trữ thông tin trên ổ đĩa hoặc bộ nhớ. + stream: là luồng thông tin, stream được dùng để gửi, nhận thông tin từ bộ nhớ, mạng, web, - Tại sao cần file và stream? + Dữ liệu được nhập từ bàn phím vào chương trình được lưu trong vùng đệm, nó bị mất đi khi chương trình kết thúc. + File lưu trữ được dữ liệu cả khi chương trình kết thúc hoặc tắt máy tính. Dữ liệu lưu trong file có thể được dùng cho lần chạy chương trình tiếp theo hoặc cho chương trình khác. + Stream được dùng để lưu trữ và nhận dữ liệu từ file. Viet Anh Phan – K12 7
  8. Một số lớp dùng để đọc, ghi file - Stream - StreamWriter - StreamReader - BinaryReader. - BinaryWriter. Viet Anh Phan – K12 8
  9. Đọc và ghi file văn bản - Để đọc ghi dữ liệu vào file văn bản theo kiểu mã ASCII, Unicode , thực hiện các thao tác sau: + Tạo 1 đối tượng System.IO.FileStream tham chiếu đến file. + Ghi file: gói FileStream trong một System.IO.StreamWriter và sử dụng phương thức nạp chồng Write. + Đọc file: gói FileStream trong một System.IO.StreamReader và sử dụng phương thức Read hay ReadLine. - Khi sử dụng StreamReader và StreamWriter phải chỉ định kiểu mã hóa. Mặc định là UTF-8. Các kiểu mã hóa được .NET cung cấp trong namespace System.Text. Viet Anh Phan – K12 9
  10. Ví dụ ghi file class Program { static void Main(string[] args) { FileStream stream = new FileStream(@"C:\data.txt",FileMode.Create, FileAccess.Write); StreamWriter writer = new StreamWriter(stream, Encoding.Unicode); writer.WriteLine("Lớp Tin 13"); writer.Write("Số sinh viên = "); writer.Write(120); writer.Close(); stream.Close(); Console.Read(); } } Viet Anh Phan – K12 10
  11. Ví dụ đọc file class Program { static void Main(string[] args) { FileStream stream = new FileStream(@"C:\data.txt",FileMode.Open, FileAccess.Read); StreamReader reader = new StreamReader(stream, Encoding.Unicode); string dt = reader.ReadLine(); dt = reader.ReadLine(); reader.Close(); reader.Close(); Console.Read(); } } Viet Anh Phan – K12 11
  12. Đọc ghi file nhị phân - Tạo một đối tượng System.IO.FileStream tham chiếu đến file. - Ghi file: FileStream trong một System.IO.BinaryWriter và sử dụng phương thức nạp chồng Write. - Đọc file: FileStream trong một System.IO.BinaryReader và sử dụng phương thức Read phù hợp với kiểu dữ liệu. Viet Anh Phan – K12 12