Máy tínhLập trình

Java: Làm việc với các tập tin - viết, đọc, xóa

Java có nhiều công cụ để làm việc với các tập tin, vì họ đóng vai trò như một kho lưu trữ dữ liệu trong nhiều chương trình. Rất thường xuyên truy cập vào tập tin được yêu cầu trong Java Android. Tất cả các lớp để làm việc với các tập tin nằm trong gói java.io, mà cũng được lưu giữ lớp để làm việc với đầu vào và đầu ra suối. Nói đúng ra, Java làm việc với các tập tin xảy ra chủ yếu thông qua các byte và đầu vào nhân vật và đầu ra suối. Trường hợp ngoại lệ trong trường hợp này là lớp File. Từ đó và bắt đầu.

Lớp File Java - Làm việc với các tập tin

lớp tập tương tác trực tiếp với các tập tin và hệ thống tập tin. Một thể hiện của lớp này được sử dụng chủ yếu để truy cập các thuộc tính của tập tin và điều hướng các hệ thống các thư mục con. Nó không phải được xác định bằng các phương pháp chiết xuất và lưu trữ dữ liệu trong một tập tin, nhưng với lớp học này, bạn có thể nhận được rất nhiều thông tin về ngày tập tin, thời gian, cho phép truy cập và đường dẫn thư mục. Trong thực tế, đối tượng lớp File là việc giải thích của một tập tin hoặc thư mục trong Java.

Để tạo một thể hiện của các tập tin, sử dụng một trong những nhà xây dựng của nó: File (String đường dẫn đến thư mục, String filename).

Hãy xem xét các kỹ thuật cơ bản của lớp này, cho phép để có được thông tin về một tập tin hoặc thư mục:

  • getName () - trả về tên của tập tin;
  • tồn tại () - trả về một boolean true, nếu tập tin tồn tại, hay sai trong trường hợp ngược lại;
  • isFile () - xác định xem đối tượng dùng để chỉ một tập tin, trả lại giá trị logic tương ứng;
  • isDirectory () - trả về true, nếu nó là một thư mục;
  • canWrite () - trả về true, nếu tập tin là có thể ghi;
  • canRead () - trả về true, nếu file có thể đọc được;
  • setReadOnly () - làm cho các tập tin chỉ đọc;
  • chiều dài () - trả về kích thước tập tin trong byte;
  • renameTo (Nộp tên mới) - đổi tên file hiện hành phù hợp với các đối số. Trả về true, nếu hoạt động là thành công;
  • xóa () - xóa một tập tin hoặc thư mục (nếu nó là trống), mà chỉ ra người gọi;
  • list () - lấy một danh sách tên đối tượng được lưu trữ trong thư mục, như một mảng hàng (chỉ áp dụng cho thư mục).

Do đó, bằng cách sử dụng lớp File được cung cấp trong Java làm việc với các tập tin và thư mục.

Làm việc với các tập tin bằng lớp FileInputStream và FileOutputStream

Trước đó chúng tôi đã đề cập rằng thực hiện chủ yếu bằng phương tiện của dòng đầu vào và đầu ra trong Java làm việc với các tập tin. suối byte cho các tập tin được trình bày trong các hình thức của các tầng lớp FileInputStream và FileOutputStream. Những lớp này là những người kế thừa của các cơ sở lớp trừu tượng InputStream và OutputStream tương ứng, vì vậy các phương pháp của các lớp này có sẵn để làm việc với các tập tin.

Xem xét đầu tiên FileInputStream. Bộ dụng cụ của lớp này được trình bày dưới đây:

Các nhà xây dựng đầu tiên diễn như một cuộc tranh cãi của các đường dẫn tập tin như là một chuỗi, và lần thứ hai - theo hình thức đại diện đối tượng. Mặc dù các nhà xây dựng đầu tiên được sử dụng thường xuyên hơn trong trường hợp thứ hai có thể nghiên cứu các thuộc tính của các tập tin có sẵn trong các phương pháp lớp File. Khi bạn tạo một thể hiện của lớp FileInputStream mở thêm một input stream để đọc các tập tin.

constructor của lớp cha FileOutputStream được trình bày dưới đây:

Tình hình cũng tương tự như một FileInputStream, nhưng nó cũng có thể mất một giá trị logic "append", trong đó, khi đúng chỉ ra rằng các dữ liệu được ghi vào tập tin mục tiêu sẽ được nối vào hiện hữu, và nếu sai - sẽ đi đầy đủ ghi đè lên tập tin, ví dụ, các dữ liệu cũ sẽ không được lưu.

Hãy xem xét một ví dụ sử dụng các lớp:

Đầu vào dòng FileInputStream file1.txt đọc dữ liệu từ tập tin byte bởi byte theo phương thức read (). Mỗi đọc byte được lưu trữ trong một biến dưới dạng số nguyên. Hơn nữa, trong cơ thể của vòng lặp while , biến này được thông qua như là một cuộc tranh cãi để viết một phương pháp thể hiện của FileOutputStream, mà viết về byte nhận được trong tập tin file2.txt. Vào cuối của hai con suối bắt buộc đóng theo phương pháp gần gũi.

Lớp FileReader và FileWriter

Nếu bạn chắc chắn biết rằng khi làm việc với các tập tin, bạn sẽ phải đối phó với các văn bản, nó làm cho cảm giác sử dụng một nhân vật thay vì dòng byte. Những dòng chảy đều có phần lớp FileReader và FileWriter trong Java. Làm việc với các tập tin sử dụng các lớp học diễn ra gần giống như trong trường hợp trước. Những lớp học được hậu duệ Reader và Writer tương ứng, trong đó xác định các phương pháp cơ bản cho đầu vào và đầu ra dữ liệu.

Nhà thiết kế lớp FileReader và FileWriter được trình bày dưới đây:

Đồng ý, sự khác biệt về ngữ nghĩa so với byte suối hầu như không có. Điểm mấu chốt là những lớp học được thiết kế đặc biệt để làm việc với các nhân vật trong Unicode, không thể làm dòng byte. Đó là cách Java được tổ chức trong công việc với các tập tin. Ví dụ về các lớp dữ liệu được đưa ra dưới đây:

Như bạn có thể thấy, sự khác biệt không quan sát được. Cần lưu ý rằng mặc dù các nhân vật dòng chảy, trở về phương pháp đọc, và phương pháp ghi có một giá trị số nguyên. do đó mặc dù chữ ký phương pháp ghi liên quan đến việc tiếp nhận int loại lập luận được ghi trong dòng, chỉ có 16 bit thấp, biểu tượng như đại diện trong Java là số bit.

phần kết luận

Vì vậy, chúng tôi đã thảo luận về các lớp học cơ bản để làm việc với các tập tin trong Java. Điều đáng chú ý là nếu bạn đang đi để phát triển phần mềm cho Java Android, bạn có thể yên tâm sử dụng công cụ này.

Similar articles

 

 

 

 

Trending Now

 

 

 

 

Newest

Copyright © 2018 vi.birmiss.com. Theme powered by WordPress.