InputStream转String高效实现
时间: 2023-07-07 11:27:25 浏览: 87
Java实现输入流转化为String
可以使用Java 8中的java.util.Scanner类将InputStream转换为String,代码如下:
```
import java.util.Scanner;
import java.io.InputStream;
import java.util.NoSuchElementException;
import java.util.Locale;
public String inputStreamToString(InputStream inputStream) {
Scanner scanner = new Scanner(inputStream).useDelimiter("\\A");
try {
return scanner.hasNext() ? scanner.next() : "";
} catch (NoSuchElementException e) {
return "";
}
}
```
这里使用了Scanner类的useDelimiter方法,将输入流的分隔符设置为正则表达式“\\A”,也就是输入的开头。这样,在调用Scanner的next方法时,就会把整个输入流读取为一个字符串。同时,为了避免NoSuchElementException异常的出现,我们需要在try-catch语句中处理这个异常。
阅读全文