java 中InputStream,String,File之间的相互转化对比
程序员文章站
2024-03-02 20:32:46
inputstream,string,file相互转化
1. string --> inputstream
inputstream s...
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(); }
感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!