添加链接
link之家
链接快照平台
  • 输入网页链接,自动生成快照
  • 标签化管理网页链接
public class _3_21ByteArrayInputStream { public static void main(String[] args) { // FileInputStream是请求操作系统进行的 // 而ByteArray是虚拟机中的一块内存,GC管理,所以可以不需要关闭流 // 所有对象,包括数字都可以转成字节数组二进制,方便我们进行网络传送 // 字节数组不要过大 // byte[] datas = " eveything will be ok".getBytes(StandardCharsets.UTF_8); // InputStream is = null; // try { // is = new ByteArrayInputStream(datas); // byte[] flush = new byte[5]; // int len=-1; // while((len=is.read(flush))!=-1){ // String str = new String(flush,0,flush.length); // System.out.println(str); // } // }catch (IOException e){ // e.printStackTrace(); // }//没有close方法 // 保存的位置,模拟网络节点或者服务器中的某个节点的存储 // byte[] dest = null; // ByteArrayOutputStream baos = null; // baos = new ByteArrayOutputStream(); // String msg = "nanjing rain"; // byte[] data1 = msg.getBytes(StandardCharsets.UTF_8); // baos.write(data1,0,data1.length); // //获取数据 // dest = baos.toByteArray(); // System.out.println(new String(dest)); // try { // baos.flush(); // } catch (IOException e) { // e.printStackTrace(); // } byte[] datas = fileToByteArray("src\\01.jpg"); System.out.println(datas.length); // 1.图片读取到字节数组 public static byte[] fileToByteArray(String filename){ File file = new File(filename); byte[] dest = null; InputStream ism = null; ByteArrayOutputStream baos = null; try { ism = new FileInputStream(file); baos = new ByteArrayOutputStream(); // read的返回值int是字符的值 // int temp; // while((temp = ism.read())!=-1){ // System.out.println((char)(temp)); // } byte[] flush = new byte[1024*10]; //容器大小 int length = -1;//接收长度 while((length=ism.read(flush))!=-1){ baos.write(flush,0,length); baos.flush(); dest = baos.toByteArray(); } catch (FileNotFoundException e) { e.printStackTrace(); } catch (IOException e) { e.printStackTrace(); }finally { try { if(ism!=null){ ism.close(); } catch (IOException e) { e.printStackTrace(); return dest; // 2.字节数组到图片 public static void byteArrayToFile(byte[] datas,String filename){ File file = new File(filename); InputStream is = null; OutputStream osm = null; is = new ByteArrayInputStream(datas); osm = new FileOutputStream(file); byte[] flush = new byte[1024]; int len=-1; while((len=is.read(flush))!=-1){ osm.write(flush,0,len); osm.flush(); }catch (IOException e){ e.printStackTrace(); }finally { try { if(osm!=null){ osm.close(); } catch (IOException e) { e.printStackTrace();                 //InputSteam byte [] 数组 ,网上写的会丢失数据。 byte [] byt = new byte [1024]; try { Runtime rt = Runtime.getRuntime(); // 调用 调用mysql的安装目录的命令 Process child = rt .exec("F:\\mys... ByteArray InOutStream 一个 Java 类,允许从 ByteArray OutputStream到 ByteArray InputStream 的快速,简单的“ 换” ## License此源代码( ByteArray InOutStream. java )是免费许可证。 这意味着您可以随意使用它,而无需询问作者。 InputStream byte []其实直接使用IOUtils就可以了,但是需要注意的是,将 InputStream 粗暴地 转成 byte [],只适用于 文件 较小的时候,当如果 文件 有好几个G,再这样 ,内存就要溢出了。 Java 中将 inputstream 输入流 换成 byte [] 字节 数组 Java 中的I/O机制都是基于数据流进行输入和输出的,将流 换成 字节 数组 保存下来是数据流传输必不可少的一部分。 换的代码如下(在具体场景下需要处理流的关闭问题): public static byte [] toBy... Java InputStream Byte Array 和 Byte Buffer 本文介绍如何实现 InputStream Byte Array 和 Byte Buffer,首先使用 Java 原生方式,然后介绍Guava和Commons IO。 1. 转成 Byte 数组 首先,我们看如何从简单输入流中获取 字节 数组 字节 数组 重要特性是应用索引按照每八个bit位方式快速访问内存中的值,因此可以操作这些... Java byte 数组 InputStream 之间的 换2020-08-23 06:41:331、将File、File InputStream 换为 byte [] 数组 :File file = new File("file.txt"); InputStream input = new File InputStream (file); byte [] byt = new byte [input.available(... 在commons-io包中org.apache.commons.io.IOUtils类的to ByteArray ( InputStream input)已经有实现了,我们可以参考下思路,完成我们的方法,我们可以用类似下面的代码实现 inputStream 化为 byte [] 数组 public static byte [] to ByteArray ( InputStream input) throws IOEx 感觉不难,但用的时候一时半会写不出来,浪费时间,于是记录下来。 public static byte [] read( InputStream inputStream ) throws IOException { try { ByteArray OutputStream baos = new ByteArray OutputStream(); 1: byte [] 换为 InputStream InputStream sbs = new ByteArray InputStream ( byte [] buf);2: InputStream 换为 InputStream byte [] ByteArray OutputStream swapStream = new ByteArray OutputStream(); byte [] buff = new byte [... byte [] buffer=new byte [1024]; int len=0; ByteArray OutputStream bos=new ByteArray OutputStream(); while((len=is.read(buffer))!=-1){ bos.write