Có một thành ngữ chính xác hơn/tiêu chuẩn (ví dụ, một phương pháp JDK) cho "đường ống" đầu vào cho đầu ra trong Java không?Thành ngữ Java cho "đường ống"
public void pipe(Reader in, Writer out) { CharBuffer buf = CharBuffer.allocate(DEFAULT_BUFFER_SIZE); while(in.read(buf) >= 0) { out.append(buf.flip()); buf.clear(); } }
[EDIT] Xin lưu ý Reader
và Writer
được cho. Câu trả lời đúng sẽ chứng minh làm thế nào để có in
và out
và tạo thành một đường ống (tốt nhất là không có nhiều hơn 1 hoặc 2 cuộc gọi phương pháp). Tôi sẽ chấp nhận câu trả lời trong đó in
và out
là InputStream
và một OutputStream
(tốt hơn là với chuyển đổi từ/đến Reader
/Writer
). Tôi sẽ không chấp nhận câu trả lời trong đó in
hoặc out
là một lớp con của Reader
/InputStream
hoặc Writer
/OutputStrem
.
bản sao có thể có của [Cách dễ dàng để ghi nội dung của một luồng đầu vào Java vào một luồng đầu ra] (http://stackoverflow.com/questions/43157/easy-way-to-write-contents-of-a-java-inputstream -to-an-outputstream) –