quick-json parser очень прост, гибкий, очень быстрый и настраиваемый. Попробуйте
Особенности:
Его можно использовать следующим образом:
JsonParserFactory factory=JsonParserFactory.getInstance();
JSONParser parser=factory.newJsonParser();
Map jsonMap=parser.parseJson(jsonString);
Сломанная трубка просто означает, что соединение не выполнено. Разумно предположить, что это невозможно восстановить, а затем выполнить любые необходимые действия по очистке (закрытие соединений и т. Д.). Я не верю, что вы когда-нибудь увидите это просто из-за того, что соединение еще не завершено.
Если вы используете неблокирующий режим, то метод SocketChannel.connect вернет false, и вам понадобится использовать методы isConnectionPending и finishConnect, чтобы убедиться, что соединение завершено. Я обычно кодировал бы на основе ожидания того, что все будет работать, а затем поймать исключения для обнаружения сбоя, а не полагаться на частые вызовы на «isConnected».
Вы должны предположить, что розетка была закрыта на другом конце. Заверните свой код с помощью блока catch catch для IOException.
Вы можете использовать isConnected (), чтобы определить, подключен ли SocketChannel или нет, но это может измениться до завершения вызова write (). Попробуйте вызвать его в своем блоке catch, чтобы убедиться, что на самом деле именно поэтому вы получаете исключение IOException.
Сломанная труба означает, что вы написали соединение, которое уже закрыто другим концом.
isConnected()
не обнаруживает это условие. Только запись делает.
разумно всегда вызывать SocketChannel.isConnected () перед попыткой SocketChannel.write ()
blockquote>Это бессмысленно. Соединитель сам подключен к . Вы подключили его. То, что не может быть не подключено, является самим соединением, и вы можете только определить это, попробовав его.