Tôi đã thiết lập máy chủ và máy khách, cơ bản là một hệ thống email văn bản cơ bản. Tôi hiện đang sử dụng PrintWriter để gửi văn bản giữa máy chủ và máy khách. Tôi đang cố gắng để tạo ra một hệ thống dựa trên tập tin đính kèm và để làm điều này tôi đang sử dụng một ObjectOutputStream.ObjectOutputStream and PrintWriter Conflict
private static PrintWriter output;
private static ObjectOutputStream outStream;
public ClientHandler(Socket socket) throws IOException
{
client = socket;
outStream = new ObjectOutputStream(client.getOutputStream());
input = new Scanner(client.getInputStream());
output = new PrintWriter(client.getOutputStream(), true);
}
Tôi hiện đang có vấn đề ở đâu nếu tôi cố gắng gửi văn bản thông qua PrintWriter đầu ra, vì một lý do nhân vật phụ sẽ được thêm vào phần đầu của văn bản được gửi đi, có nghĩa là chương trình không thể xác định từ khóa được thông qua thông qua printwriter cho khách hàng. Vấn đề sẽ dừng lại nếu tôi nhận xét việc tạo ra đối tượng outStream.
Có ai cho tôi lời khuyên nào để giải quyết vấn đề xung đột này không?
Bạn không bao giờ nên sử dụng 'PrintWriter' hoặc' PrintStream' trừ khi bạn chuẩn bị gọi checkError() sau mỗi I/O, và chuẩn bị đưa ra trạng thái lỗi nhị phân thay vì ngoại lệ. – EJP