第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機立即綁定

我的服務(wù)器在接受讀取對象信息后,再次發(fā)送信息客戶端就收不到了

//麻煩幫我看一下是哪里出了問題,謝謝!
//服務(wù)器
package?FileInput;

import?java.io.BufferedReader;
import?java.io.File;
import?java.io.FileWriter;
import?java.io.IOException;
import?java.io.InputStream;
import?java.io.InputStreamReader;
import?java.io.ObjectInputStream;
import?java.io.PrintWriter;
import?java.net.ServerSocket;
import?java.net.Socket;
import?java.util.ArrayList;

public?class?Servers?{
	public?static?void?main(String[]?args)?throws?IOException,?ClassNotFoundException?{
		String?info?=?null;
		ArrayList<User>?users=?new?ArrayList<User>();
		User?u?=?new?User();

		System.out.println("服務(wù)器開始運行");
		ServerSocket?ss?=?new?ServerSocket(8810);
		Socket?s?=?ss.accept();
		InputStream?is?=?s.getInputStream();
		InputStreamReader?isr?=?new?InputStreamReader(is);
		BufferedReader?br?=?new?BufferedReader(isr);
		PrintWriter?pw?=?new?PrintWriter(s.getOutputStream());
		ObjectInputStream?ois?=?new?ObjectInputStream(is);
		FileWriter?fw?=?new?FileWriter("README1.md");

		while?(true)?{
			info?=?br.readLine();
			if?(info?!=?null)
				System.out.println(info);
			if?(info?==?null)?{
				continue;
			}?else?if?(info.equals("log"))?{
				pw.println("log");
				pw.flush();
				System.out.println("log已發(fā)送");
			}?else?if?(info.equals("exit"))?{
				pw.println("exit");
				pw.flush();
				System.out.println("exit已發(fā)送");
				break;
			}?else?if?(info.equals("logUp"))?{
				pw.println("logUp");
				pw.flush();
				System.out.println("logUp已發(fā)送");
				User?user?=?null;
				while?((user?=?(User)?ois.readObject())?==?null);
				
				boolean?flag?=?true;
				for?(int?i?=?0;?i?<?users.size();?i++)?{
					if?(user.getName().equals(users.get(i).getName()))?{
						flag?=?false;
						break;
					}
				}
				if?(flag)?{
					users.add(user);
					pw.print("logUpSuccess");
					pw.flush();
					System.out.println("logUpSuccess已發(fā)送");
				}?else?{
					pw.println("logUpFailure");
					pw.flush();
					System.out.println("logUpFailure已發(fā)送");
				}
			}?else?if?(info.equals("logIn"))?{
				pw.println("logIn");
				pw.flush();
				System.out.println("logIn已發(fā)送");
				User?user?=?null;
				while?((user?=?(User)?ois.readObject())?==?null);
				boolean?flagN?=?false;
				boolean?flagP?=?false;
				for?(int?i?=?0;?i?<?users.size();?i++)?{
					if?(user.getName().equals(users.get(i).getName()))?{
						flagN?=?true;
						if?(user.getPassword().equals(users.get(i).getPassword()))?{
							flagP?=?true;
							u?=?users.get(i);
						}
						break;
					}
				}
				if?(flagN?&&?flagP)?{
					pw.print("logInSuccess");
					pw.flush();
					System.out.println("logInSuccess已發(fā)送");
				}?else?if?(flagN?&&?!flagP)?{
					pw.print("logInFailurePassword");
					pw.flush();
					System.out.println("logInFailurePassword已發(fā)送");
				}?else?{
					pw.print("logInFailureName");
					pw.flush();
					System.out.println("logInFailureName已發(fā)送");
				}
			}?else?if?(info.equals("logOut"))?{
				pw.println("logOut");
				pw.flush();
				System.out.println("logOut已發(fā)送");
			}?else?if?(info.equals("code"))?{
				pw.println("code");
				pw.flush();
				System.out.println("code已發(fā)送");
			}?else?if?(info.equals("putFlie"))?{
				pw.println("file");
				pw.flush();
				System.out.println("file已發(fā)送");
				while?(true)?{
					int?l?=?0;
					char[]?c?=?new?char[3072];
					
					while?((l?=?isr.read(c,?0,?c.length))?==?-1);
					do?{
						fw.write(c,?0,?l);
					}?while?((l?=?isr.read(c,?0,?c.length))?==?-1);
					System.out.println("文件已寫出");
				}
			}
		}
		fw.close();
		s.close();
		ss.close();
	}
}

//客戶端
package?FileInput;

import?java.io.BufferedReader;
import?java.io.FileReader;
import?java.io.IOException;
import?java.io.InputStreamReader;
import?java.io.ObjectOutputStream;
import?java.io.OutputStream;
import?java.io.PrintWriter;
import?java.net.Socket;
import?java.net.UnknownHostException;
import?java.util.NoSuchElementException;
import?java.util.Scanner;

public?class?Client{

	public?static?void?main(String[]?args)?throws?UnknownHostException,?IOException?{
		String?info?=?null;
		Scanner?input?=?new?Scanner(System.in);
		Client?client?=?new?Client();
		
		Socket?s?=?new?Socket("localhost",?8810);
		OutputStream?os?=?s.getOutputStream();
		PrintWriter?pw?=?new?PrintWriter(os);
		BufferedReader?br?=?new?BufferedReader(new?InputStreamReader(s.getInputStream()));
		ObjectOutputStream?oos?=?new?ObjectOutputStream(os);
		FileReader?fr?=?new?FileReader("src/Internet/README.md");
		
		pw.println("log");
		pw.flush();
		System.out.println("log已發(fā)送");
		
		
		
		while?(true)?{
			info?=?br.readLine();
			if?(info?!=?null)?System.out.println(info);
			if?(info?==?null)?{
				continue;
			}?else?if?(info.equals("logUpSuccess"))?{
				System.out.println("注冊成功!");
				pw.print("log");
				pw.flush();
				System.out.println("log已發(fā)送");
			}?else?if?(info.equals("logUpFailure"))?{
				System.out.println("用戶已存在!");
				pw.print("log");
				pw.flush();
				System.out.println("log已發(fā)送");
			}?else?if?(info.equals("logInFailurePassword"))?{
				System.out.println("密碼錯誤!");
				pw.print("log");
				pw.flush();
				System.out.println("log已發(fā)送");
			}?else?if?(info.equals("logUpFailureName"))?{
				System.out.println("用戶不存在!");
				pw.print("log");
				pw.flush();
				System.out.println("log已發(fā)送");
			}?else?if?(info.equals("logUpSuccess"))?{
				System.out.println("登錄成功!");
				pw.print("code");
				pw.flush();
				System.out.println("code已發(fā)送");
			}?else?if?(info.equals("logOut"))?{
				System.out.println("登出成功!");
				pw.print("log");
				pw.flush();
				System.out.println("log已發(fā)送");
			}?else?if?(info.equals("log"))?{
				String?select?=?client.log(input);
				pw.println(select);
				pw.flush();
				System.out.println(select+"已發(fā)送");
			}?else?if?(info.equals("logUp"))?{
				User?user?=?client.logUp(input);
				
				oos.writeObject(user);
				oos.flush();
				System.out.println("user已發(fā)送");
			}?else?if?(info.equals("file"))?{
				String?select?=?client.fileInput(input);
				
				char[]?c?=?new?char[10?*?1024];
				int?l?=?0;
				while?((l?=?fr.read(c,?0,?c.length))!=?-1)?{
					pw.write(c,?0,?l);
				}
				System.out.println("文件已發(fā)送");
			}?else?if?(info.equals("exit"))?{
				System.out.println("文件傳輸系統(tǒng)已退出!");
				break;
			}?else?if?(info.equals("logIn"))?{
				User?user?=?client.logIn(input);
				oos.writeObject(user);
				oos.flush();
				System.out.println("user已發(fā)送");
			}?else?if?(info.equals("code"))?{
				String?select?=?client.code(input);
				pw.println(select);
				pw.flush();
				System.out.println(select+"已發(fā)送");
			}?
		}
		fr.close();
		s.close();
	}
	
	public?String?log(Scanner?input)?{
		System.out.println("歡迎使用文件上傳系統(tǒng),請先登錄或注冊。");
		System.out.println("1.?注冊");
		System.out.println("2.?登錄");
		System.out.println("3.?退出");
		System.out.println("請輸入相應的序號:");
		int?select?=?0;
		do?{
			try?{
				select?=?input.nextInt();
			}?catch?(NoSuchElementException?e)?{
				System.out.println("請輸入相應的序號!");
				continue;
			}?catch?(NullPointerException?e)?{
				System.out.println("請輸入相應的序號!");
				continue;
			}
			if?(select?>?3?||?select?<?1)?{
				System.out.println("請輸入相應的序號!");
				continue;
				}
		}?while?(select?>?3?||?select?<?1);
		String?s?=?null;
		switch?(select)?{
		case?1:
			s?=?"logUp";
			break;
		case?2:
			s?=?"logIn";
			break;
		default:
			s?=?"exit";
			break;
		}
		return?s;
	}
	
	public?User?logUp(Scanner?input)?{
		User?user?=?new?User();
		String?name?=?null;
		String?password?=?null;
		System.out.println("請輸入用戶名:");
		name?=?input.next();
		user.setName(name);
		while?(true)?{
			System.out.println("請輸入密碼:");
			password?=?input.next();
			user.setPassword(password);
			System.out.println("請再次輸入密碼:");
			password?=?input.next();
			if?(!password.equals(user.getPassword()))?{
				System.out.println("密碼與重復密碼不匹配,請重新輸入密碼!");
			}?else?{
				break;
			}
		}
		return?user;
	}
	
	public?User?logIn(Scanner?input)?{
		User?user?=?new?User();
		String?name?=?null;
		String?password?=?null;
		System.out.println("請輸入用戶名:");
		name?=?input.next();
		user.setName(name);
		System.out.println("請輸入密碼:");
		password?=?input.next();
		user.setPassword(password);
		return?user;
	}

	public?String?code(Scanner?input)?{
		System.out.println("請選擇功能");
		System.out.println("1.?上傳文件");
		System.out.println("2.?登出");
		int?select?=?0;
		do?{
			try?{
				select?=?input.nextInt();
			}?catch?(NoSuchElementException?e)?{
				System.out.println("請輸入相應的序號!");
				continue;
			}?catch?(NullPointerException?e)?{
				System.out.println("請輸入相應的序號!");
				continue;
			}
			if?(select?>?2?||?select?<?1)?{
				System.out.println("請輸入相應的序號!");
				continue;
				}
		}?while?(select?>?2?||?select?<?1);
		String?s?=?null;
		switch?(select)?{
		case?1:
			s?=?"putFile";
			break;
		case?2:
			s?=?"logOut";
			break;
		default:
		}
		return?s;
		
	}

	public?String?fileInput(Scanner?input)?{
		System.out.println("請輸入要上傳的文件路徑(相對路徑或絕對路徑)");
		String?select?=?input.next();
		return?select;
	}
}

//user
package?FileInput;

import?java.io.Serializable;

public?class?User?implements?Serializable{
	
	private?String?name;
	private?String?password;
	User()?{
		name?=?null;
		password?=?null;
	}
	String?getName()?{
		return?name;
	}
	void?setName(String?name)?{
		this.name?=?name;
	}
	String?getPassword()?{
		return?password;
	}
	void?setPassword(String?password)?{
		this.password?=?password;
	}
}


正在回答

2 回答

服務(wù)器的工作信息

服務(wù)器開始運行

已收到:log

log已發(fā)送

已收到:logIn

logIn已發(fā)送

logInFailureName已發(fā)送


這是客戶端的

log已發(fā)送

已收到:log

歡迎使用文件上傳系統(tǒng),請先登錄或注冊。

1. 注冊

2. 登錄

3. 退出

請輸入相應的序號:

2

logIn已發(fā)送

已收到:logIn

請輸入用戶名:

123

請輸入密碼:

123

user已發(fā)送


0 回復 有任何疑惑可以回復我~

舉報

0/150
提交
取消

我的服務(wù)器在接受讀取對象信息后,再次發(fā)送信息客戶端就收不到了

我要回答 關(guān)注問題
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學習伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號