相关疑难解决方法(0)

如何在Java中读取/转换InputStream为String?

如果你有一个java.io.InputStream对象,你应该如何处理该对象并产生一个String


假设我有一个InputStream包含文本数据,并且我想将其转换为a String,所以例如我可以将其写入日志文件.

采取InputStream并将其转换为最简单的方法是String什么?

public String convertStreamToString(InputStream is) {
    // ???
}
Run Code Online (Sandbox Code Playgroud)

java string io inputstream stream

3864
推荐指数
37
解决办法
203万
查看次数

来自URL的InputStream

如何从URL获取InputStream?

例如,我想将文件放在url上,wwww.somewebsite.com/a.txt并通过servlet将其作为Java中的InputStream读取.

我试过了

InputStream is = new FileInputStream("wwww.somewebsite.com/a.txt");
Run Code Online (Sandbox Code Playgroud)

但我得到的是一个错误:

java.io.FileNotFoundException
Run Code Online (Sandbox Code Playgroud)

java url inputstream

108
推荐指数
4
解决办法
14万
查看次数

URLConnection不遵循重定向

我无法理解为什么Java HttpURLConnection不遵循重定向.我使用以下代码来获取此页面:

import java.net.URL;
import java.net.HttpURLConnection;
import java.io.InputStream;

public class Tester {

    public static void main(String argv[]) throws Exception{
        InputStream is = null;

        try {
            String httpUrl = "http://httpstat.us/301";
            URL resourceUrl = new URL(httpUrl);
            HttpURLConnection conn = (HttpURLConnection)resourceUrl.openConnection();
            conn.setConnectTimeout(15000);
            conn.setReadTimeout(15000);
            conn.connect();
            is = conn.getInputStream();
            System.out.println("Original URL: "+httpUrl);
            System.out.println("Connected to: "+conn.getURL());
            System.out.println("HTTP response code received: "+conn.getResponseCode());
            System.out.println("HTTP response message received: "+conn.getResponseMessage());
       } finally {
            if (is != null) is.close();
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

而且,我收到以下回复(看起来绝对正确!):

Original URL: http://httpstat.us/301
Connected to: …

java https redirect httpurlconnection http-redirect

92
推荐指数
5
解决办法
8万
查看次数

Java和HTTPS url连接,无需下载证书

此代码连接到HTTPS站点,我假设我没有验证证书.但为什么我不必在本地为该网站安装证书?我不应该在本地安装证书并为此程序加载它还是在封面下载?客户端到远程站点之间的流量是否仍然在传输中加密?

import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.io.Reader;
import java.net.URL;
import java.net.URLConnection;
import java.security.cert.X509Certificate;

import javax.net.ssl.HostnameVerifier;
import javax.net.ssl.HttpsURLConnection;
import javax.net.ssl.SSLContext;
import javax.net.ssl.SSLSession;
import javax.net.ssl.TrustManager;
import javax.net.ssl.X509TrustManager;

public class TestSSL {

    public static void main(String[] args) throws Exception {
        // Create a trust manager that does not validate certificate chains
        TrustManager[] trustAllCerts = new TrustManager[] { new X509TrustManager() {
            public java.security.cert.X509Certificate[] getAcceptedIssuers() {
                return null;
            }
            public void checkClientTrusted(X509Certificate[] certs, String authType) {
            }
            public void checkServerTrusted(X509Certificate[] certs, String authType) {
            } …
Run Code Online (Sandbox Code Playgroud)

java ssl https

44
推荐指数
3
解决办法
10万
查看次数

这是内存泄漏还是误报?

这是我的代码:

import java.io.BufferedReader;
import java.io.FileNotFoundException;
import java.io.FileReader;
import java.util.Scanner;

public class temp {
    public static void main(String[] args) throws FileNotFoundException {
        BufferedReader a = new BufferedReader(new FileReader("a"));
        Scanner scanner = new Scanner(a).useDelimiter(",");
        scanner.close();
    }
}
Run Code Online (Sandbox Code Playgroud)

我得到一个警告new Scanner(a)说(我正在使用jdk1.7.0_05进行编译.):

Resource leak: '<unassigned Closeable value>' is never closed.
Run Code Online (Sandbox Code Playgroud)

我做错了什么,或者这只是一个错误的警告?

java eclipse warnings memory-leaks

38
推荐指数
2
解决办法
3万
查看次数

如何以Java 8方式在特定URL上获取文本行?

我想逐行阅读这些文字:http://www.puzzlers.org/pub/wordlists/unixdict.txt

我试图得到一个流:

Stream<String> stream = Files.lines(Paths.get("http://www.puzzlers.org/pub/wordlists/unixdict.txt"));
stream.forEach((word) -> System.out.println(word));
//Close the stream and it's underlying file as well
stream.close();
Run Code Online (Sandbox Code Playgroud)

但我怀疑它只适用于文件.是否有类似的URL方法?

java java-8 java-stream

6
推荐指数
1
解决办法
3723
查看次数