首页 > 开发 > Java > 正文

java 中InputStream,String,File之间的相互转化对比

2024-07-13 10:06:13
字体:
来源:转载
供稿:网友

java/118377.html">InputStream,String,File相互转化

 1. String --> InputStream

InputStream String2InputStream(String str){ ByteArrayInputStream stream = new ByteArrayInputStream(str.getBytes()); return stream;}

2. InputStream --> String

String inputStream2String(InputStream is){ BufferedReader in = new BufferedReader(new InputStreamReader(is)); StringBuffer buffer = new StringBuffer(); String line = ""; while ((line = in.readLine()) != null){  buffer.append(line); } return buffer.toString();}

今天从网上看到了另一种方法,特拿来分享

String all_content=null;  try {  all_content =new String();   InputStream ins = 获取的输入流;   ByteArrayOutputStream outputstream = new ByteArrayOutputStream();  byte[] str_b = new byte[1024];  int i = -1;  while ((i=ins.read(str_b)) > 0) {   outputstream.write(str_b,0,i);  }  all_content = outputstream.toString(); } catch (Exception e) {e.printStackTrace();  }

此两种方法上面一种更快,但是比较耗内存,后者速度慢,耗资源少

3、File --> InputStream

InputStream in = new InputStream(new FileInputStream(File));

4、InputStream --> File

public void inputstreamtofile(InputStream ins,File file){OutputStream os = new FileOutputStream(file);int bytesRead = 0;byte[] buffer = new byte[8192];while ((bytesRead = ins.read(buffer, 0, 8192)) != -1) {os.write(buffer, 0, bytesRead);}os.close();ins.close();}

感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!


注:相关教程知识阅读请移步到JAVA教程频道。
发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表