Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/sockets/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
java.net.SocketException:从流读取时重置连接_Java_Sockets - Fatal编程技术网

java.net.SocketException:从流读取时重置连接

java.net.SocketException:从流读取时重置连接,java,sockets,Java,Sockets,我开发了一些可以访问url并从中读取流的代码,但是当我尝试获取流时,我得到了java.net.SocketException。下面是堆栈跟踪: java.net.SocketException: Connection reset at java.net.SocketInputStream.read(SocketInputStream.java:168) at java.io.BufferedInputStream.fill(BufferedInputStream.java:218

我开发了一些可以访问url并从中读取流的代码,但是当我尝试获取流时,我得到了java.net.SocketException。下面是堆栈跟踪:

java.net.SocketException: Connection reset
    at java.net.SocketInputStream.read(SocketInputStream.java:168)
    at java.io.BufferedInputStream.fill(BufferedInputStream.java:218)
    at java.io.BufferedInputStream.read1(BufferedInputStream.java:258)
    at java.io.BufferedInputStream.read(BufferedInputStream.java:317)
    at sun.net.www.http.HttpClient.parseHTTPHeader(HttpClient.java:687)
    at sun.net.www.http.HttpClient.parseHTTP(HttpClient.java:632)
    at sun.net.www.http.HttpClient.parseHTTP(HttpClient.java:652)
    at sun.net.www.protocol.http.HttpURLConnection.getInputStream(HttpURLConnection.java:1049)
    at utils.AljazemArabicWordsGrabber.grab(AljazemArabicWordsGrabber.java:46)
    at utils.TranslatorThread.run(TranslatorThread.java:39)
下面是导致异常的代码:

public String[] grab(EnglishWord englishWord) {

    try {
        aljazemURL = new URL(urlLink + englishWord.getLemma());
        connection = aljazemURL.openConnection();

        //connection.connect();
    //    System.out.println("connection:" + connection);
      ////  stream = connection.getInputStream();


    //    reader = new InputStreamReader(stream);
        in = new BufferedReader(new InputStreamReader(connection.getInputStream())); // the exception occurs here..


        while ((decodedString = in.readLine()) != null) {
            if (decodedString.contains("<div class=\"default_to_trans_ar\" style=\"display:block\">")) {
                decodedString = decodedString.replace("<div class=\"default_to_trans_ar\" style=\"display:block\">", "");
                decodedString = decodedString.replace("</div>", "");
                slicedWords = decodedString.split(",");
                for (String slice : slicedWords) {
                    System.out.println(slice);
                }
                //  System.out.println(decodedString);
            }

        }

        in.close();

    } catch (Exception e) {
        e.printStackTrace();
    }

    return slicedWords;
}
public String[]grab(英语单词){
试一试{
aljazemURL=新URL(urlink+englishWord.getLemma());
connection=aljazemURL.openConnection();
//connection.connect();
//System.out.println(“连接:+连接”);
////stream=connection.getInputStream();
//reader=新的InputStreamReader(流);
in=new BufferedReader(new InputStreamReader(connection.getInputStream());//此处发生异常。。
而((decodedString=in.readLine())!=null){
if(decodedString.contains(“”){
decodedString=decodedString.replace(“,”);
decodedString=decodedString.replace(“,”);
slicedWords=decodedString.split(“,”);
for(字符串切片:切片字){
系统输出打印项次(切片);
}
//System.out.println(解码字符串);
}
}
in.close();
}捕获(例外e){
e、 printStackTrace();
}
返回切片单词;
}

您确定GPS正在发送线路(以新线结束)吗


如果没有,我会反复使用read()来获取它发送的所有数据(直到达到EOF)

您可能想检查一下这个:在我发布问题之前,我检查了这个,它实际上没有帮助“实际上没有帮助”?它列出了所有三个可能的原因。你在说什么?