Lấy của tôi:
Phiên bản ngắn
Đó là việc bổ sung gói java.nio.file với chức năng hệ thống tệp và tệp nâng cao nhiều cấp độ của nó.
Từ góc độ ổ cắm mạng hoặc quyền truy cập tệp cấp thấp, NIO == NIO.2 với một vài cải tiến tiện lợi.
Phiên bản dài hơn
Java IO
Gói: java.io
API I / O chặn cũ
Java NIO
Đã thêm vào Java 1.4, API không chặn mới.
Gói: java.nio
IO không chặn Java. Lớp học thích Selector
, SelectorKey
, Channel
.
Dường như với tôi những nio là một bước tiến lớn cho mạng I / O ( Selector
, SelectorKey
, SocketChannel
, ServerSocketChannel
, Buffer
), ít hơn nhiều cho tập tin I / O ( FileChannel
và Buffer
duy nhất, bao gồm cả bộ nhớ file ánh xạ). Đây là một API cấp thấp, dành cho cả phần mạng và phần tệp.
Java NIO.2
Được thêm vào trong Java 7. Nó chủ yếu là bổ sung API xử lý và địa chỉ tệp và hệ thống tệp được cải thiện nhiều. Tệp mới và API liên quan đến hệ thống tệp là cấp tương đối cao.
Gói: java.nio.file
và một số bổ sung cho phụ huynh java.nio
.
Những bổ sung này dành cho I / O tệp và chỉ một số bổ sung nhỏ cho I / O mạng hoặc API tệp cấp thấp.
Các bổ sung API cấp thấp, không cần thiết, đáng chú ý nhất là AsynchronousSocketChannel
, AsynchronousServerSocketChannel
và AsynchronousFileChannel
bổ sung thêm các biến thể gọi lại cho một số phương thức. Các phiên bản Không đồng bộ của chủ yếu là một bổ sung tiện lợi; các giao diện ánh xạ như vậy có thể đã bị tấn công cùng nhau ngay cả trước đây, nhưng bây giờ chúng đã có sẵn trong JRE.
API tệp mới mang lại nhiều tiện ích - xử lý hệ thống tệp hữu ích hơn nhiều với Path, thao tác tệp ZIP được cải thiện nhiều bằng cách sử dụng nhà cung cấp hệ thống tệp tùy chỉnh, truy cập thuộc tính tệp đặc biệt, nhiều phương pháp tiện lợi như đọc toàn bộ tệp bằng một lệnh, sao chép tệp bằng một lệnh, v.v. Nhưng tất cả đều liên quan đến tệp / hệ thống tệp và tất cả đều ở mức khá cao.
Nhắc lại những gì tôi đã nói ở trên, từ góc độ ổ cắm mạng hoặc quyền truy cập tệp cấp thấp, NIO == NIO.2
Các liên kết có liên quan