InputStream、Reader、String的相互转换是我们经常会遇到的情况,在此记录一下以备之后查阅。
String -> InputStream
1 | String s = "Hello, World!!"; |
InputStream -> String
InputStream.read
1 | StringBuilder out = new StringBuilder(); |
Stream API
1 | BufferedReader bufferedReader = new BufferedReader(new InputStreamReader(inputStream)); |
Scanner
1 | Scanner scanner = new Scanner(inputStream).useDelimiter("\\A"); |
IOUtils (Apache Utils)
1 | String s = IOUtils.toString(inputStream, StandardCharsets.UTF_8); |
CharStreams (Guava)
1 | String s = CharStreams.toString(new InputStreamReader(inputStream, Charsets.UTF_8)); |
InputStream -> Reader
1 | Reader reader = new InputStreamReader(inputStream); |
String -> Reader
1 | String s = "Hello, World!!"; |
Reader -> String
1 | BufferedReader bufferedReader = new BufferedReader(reader); |
1 | BufferedReader bufferedReader = new BufferedReader(reader); |