Socket socket = null;
PrintWriter out =null;
InetAddress ip = InetAddress.getByName(host);
socket = new Socket(ip,port);
out = new PrintWriter(new BufferedWriter(new OutputStreamWriter(socket.getOutputStream())),true);
out.println(myString);
if(socket!=null)
socket.close();
我的android代码是这样的。我需要将字符串保存在文件中,如果有任何问题(没有互联网连接,没有服务器可用,ecc ...我尝试用try-catch,但即使没有互联网/服务器可用,也不例外。被抛出你能帮我Java套接字故障
好吧,这样我知道我是否连接,但如果我连接但服务器无法访问,我需要将字符串保存在文件中。我看到'InetAddress.isReachable()'不可靠。 –
解决您的问题并不是要依靠这样一个事实,即某件事因为没有异常而被转移到另一个主机。我强烈建议您从服务器向客户端发回确认信息。如果在特定时间(读取超时)后没有这种确认,那么您应该将该字符串写入文件。也许查找关于协议设计的书籍。 – mwhs