如何将InputStream转换为String

2019独角兽企业重金招聘Python工程师标准>>>…

大家好,又见面了,我是你们的朋友全栈君。

使用Apache库

不重复造轮子。最靠谱的方法,还是用Apache commons IOUtils 这样简单几行代码就搞定了

StringWriter writer = new StringWriter();
IOUtils.copy(inputStream, writer, encoding);
String theString = writer.toString();

或者 String theString = IOUtils.toString(inputStream, encoding)//这个方法其实封装了上面的方法,减少了一个参数

使用原生库

如果不想引入Apache库,也可以这样做

static String convertStreamToString(java.io.InputStream is) {  
    java.util.Scanner s = new java.util.Scanner(is).useDelimiter("\\A"); 
    return s.hasNext() ? s.next() : "";
}

转载于:https://my.oschina.net/u/2477353/blog/616375

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/126984.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • tar打包指定文件[通俗易懂]

    tar打包指定文件[通俗易懂]find-name"*.txt"-print>filelisttarczfxxx.tar-Tfilelist

    2022年5月31日
    113
  • C语言学生管理系统源代码「建议收藏」

      新人博主不易,希望看完点赞“`c/***autor:旋尘*time:2020.4.20*/#includeintMenu(){intcheck_number;do{system(“cls”);/运行前清屏,把选择清掉/printf(“\t学生成绩管理系统*\n”);printf(“\t*|1.添加学生信息\n”);printf(“\t|2.显示学生信息\

    2022年4月12日
    30
  • java之二维数组的初始化

    java之二维数组的初始化二维数组的格式:二维数组的内存图:二维数组的例子:

    2022年5月16日
    44
  • eNSP不同网段实现全网互通

    eNSP不同网段实现全网互通【实验拓扑】

    2022年9月11日
    0
  • 计算机网络放大器的作用,运算放大器

    计算机网络放大器的作用,运算放大器运算放大器(简称“运放”)是具有很高放大倍数的电路单元。在实际电路中,通常结合反馈网络共同组成某种功能模块。它是一种带有特殊耦合电路及反馈的放大器。其输出信号可以是输入信号加、减或微分、积分等数学运算的结果。由于早期应用于模拟计算机中用以实现数学运算,因而得名“运算放大器”。[1]由于早期应用于模拟计算机中,用以实现数学运算,故得名“运算放大器”。运放是一个从功能的角度命名的电路单元,可以由分立的…

    2022年5月22日
    28
  • 语义分割最新算法_nonnegative integers

    语义分割最新算法_nonnegative integers翻译来自:https://gist.github.com/khanhnamle1994/e2ff59ddca93c0205ac4e566d40b5e88语义分割方面的资源:https://github.com/mrgloom/awesome-semantic-segmentation1.什么是语义分割语义分割是当今计算机视觉领域的关键问题之一。从宏观上看,语义分割是一项高层次的任务,…

    2022年4月19日
    115

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号