Ứng dụng của tôi ghi nhiều byte liên tục vào một tệp. Nếu một khối mã của tôi là viết ra byte và nhận được một IOException nếu kết nối với ổ đĩa hoặc mạng bị mất như thế nào tôi biết có bao nhiêu byte nó đã viết?Xử lý ngoại lệ IO trong khi ghi tệp bằng java
Ví dụ tôi đang viết 2500 byte tại một thời điểm và nếu một IOException xảy ra không có nghĩa là nó đã viết gì cho tệp hoặc nó sẽ ghi một phần byte vào tệp? Nếu byte một phần được ghi vào tập tin làm thế nào tôi biết bao nhiêu được viết
FYI Tôi đang sử dụng
DataOutputStream
để viết ra tập tin. Tôi chỉ xả khi ứng dụng của tôi đóng.
Bạn đang sử dụng phương pháp nào để ghi vào tệp? Tôi khá chắc chắn một cái gì đó giống như một BufferedOutputStream sẽ cung cấp cho bạn một kết quả khác nhau từ chỉ là một OutputStream. – xthexder
bạn cũng có thể kiểm tra http://stackoverflow.com/questions/1742361/flush-in-java-io-filewriter, điều này cũng có thể giúp bạn – MaVRoSCy