java inputstream转string
时间: 2023-07-04 17:31:02 浏览: 95
可以使用Java中的Scanner和BufferedReader来将InputStream转换为String:
使用Scanner:
```java
Scanner s = new Scanner(inputStream).useDelimiter("\\A");
String result = s.hasNext() ? s.next() : "";
```
使用BufferedReader:
```java
BufferedReader br = new BufferedReader(new InputStreamReader(inputStream));
StringBuilder sb = new StringBuilder();
String line;
while ((line = br.readLine()) != null) {
sb.append(line);
}
String result = sb.toString();
```
其中,第一种方式使用了Scanner的useDelimiter方法,将输入流转换为一个String对象。第二种方式使用了BufferedReader逐行读取输入流,然后使用StringBuilder对象将每行数据拼接成一个String对象。
相关问题
java InputStream 转 string
可以使用 Java 的 InputStreamReader 和 BufferedReader 将 InputStream 转换为 String。首先使用 InputStreamReader 将 InputStream 转换为 Reader,然后使用 BufferedReader 包装 Reader,最后使用 BufferedReader 的 readLine() 或 read() 方法读取数据。
示例代码:
```
InputStream inputStream = ...;
InputStreamReader inputStreamReader = new InputStreamReader(inputStream, "UTF-8");
BufferedReader bufferedReader = new BufferedReader(inputStreamReader);
StringBuilder stringBuilder = new StringBuilder();
String line;
while((line = bufferedReader.readLine()) != null){
stringBuilder.append(line);
}
String result = stringBuilder.toString();
```
注意:上面的示例代码使用 UTF-8 编码读取数据,如果需要使用其它编码,可以将 "UTF-8" 替换为相应的编码。
InputStream转string
将 InputStream 转换为字符串可以使用 InputStreamReader 和 BufferedReader。以下是一种方法:
```java
public static String convertInputStreamToString(InputStream inputStream) throws IOException {
BufferedReader reader = new BufferedReader(new InputStreamReader(inputStream, StandardCharsets.UTF_8));
StringBuilder stringBuilder = new StringBuilder();
String line = reader.readLine();
while (line != null) {
stringBuilder.append(line);
line = reader.readLine();
}
return stringBuilder.toString();
}
```
请注意,此方法需要处理 IOException 异常。如果您想要更简洁的方法,可以使用 Apache Commons IO 库中的 IOUtils 类。
阅读全文