【java】java 中 byte[]、File、InputStream 互相转换

=========================================================================

使用过程中,一定要注意close()掉各个读写流!!!!!

=========================================================================

1、将File、FileInputStream 转换为byte数组:

【new File(参数) 参数可以写绝对路径,也可以如下,写一个文件名,则本文件会生成在该项目的本目录下或者从本项目的根目录下查询是否有本文件】

File file = new File("test.txt");

InputStream input = new FileInputStream(file);

byte[] byt = new byte[input.available()];

input.read(byt);

2、将byte数组转换为InputStream:

byte[] byt = new byte[1024];

InputStream input = new ByteArrayInputStream(byt);

3、将byte数组转换为File:

File file = new File(‘‘);

OutputStream output = new FileOutputStream(file);

BufferedOutputStream bufferedOutput = new BufferedOutputStream(output);

bufferedOutput.write(byt);

=================================================================

参考地址:https://www.cnblogs.com/DylanZ/p/6269042.html

=================================================================

原文地址:https://www.cnblogs.com/sxdcgaq8080/p/8404404.html

时间: 2024-11-08 09:07:52

【java】java 中 byte[]、File、InputStream 互相转换的相关文章

C#中byte[]与string的转换

C#中byte[]与string的转换 1. System.Text.UnicodeEncoding converter = new System.Text.UnicodeEncoding(); byte[] inputBytes =converter.GetBytes(inputString); string inputString = converter.GetString(inputBytes); 2. string inputString = System.Convert.ToBase6

Java中byte[]和char[]互相转换

package gj; import java.nio.ByteBuffer; import java.nio.CharBuffer; import java.nio.charset.Charset; import java.util.Arrays; /** * Author: areful * Date: 2019/3/28 */ public class CharByteKit { public static byte[] getBytes(char[] chars) { Charset c

java 无符号byte转换

java中的byte类型是有符号的,值得范围是-128-127 做网络通讯时,接收过来的数据往往都是无符号的byte,值得范围是0-255 因此直接转换时,存储到java显示的值就会有问题 int ori=200; System.out.println("原始byte值:"+ori); Byte b=(byte)ori; System.out.println("java中byte值:"+b); Integer i=b.intValue(); System.out.p

java之io之file类的常用操作

java io 中,file类是必须掌握的.它的常用api用法见实例. package com.westward.io; import java.io.File; import java.io.IOException; public class FileDemo { public static void main(String[] args) { File file= new File("d:\\javaio"); @SuppressWarnings("static-acce

java 中 byte[]、File、InputStream 互相转换

1.将File.FileInputStream 转换为byte数组: File file = new File("test.txt"); InputStream input = new FileInputStream(file); byte[] byt = new byte[input.available()]; input.read(byt); 2.将byte数组转换为InputStream: byte[] byt = new byte[1024]; InputStream inpu

java中byte, int的转换

最近在做些与编解码相关的事情,又遇到了byte和int的转换,看着那些关于反码.补码的说明依旧头疼,还是记下些实用的方法吧.int -> byte可以直接使用强制类型转换: byte b = (byte) aInt;这个操作是直接截取int中最低一个字节,如果int大于255,则值就会变得面目全非了.对于通过InputStream.read()获取的int,可采用这个方法将值还原. byte -> int这里有两种情况,一种是要求保持值不变,例如进行数值计算,可采用强制类型转换:int i =

【转】java中byte, int的转换

原文网址:http://freewind886.blog.163.com/blog/static/661924642011810236100/ 最近在做些与编解码相关的事情,又遇到了byte和int的转换,看着那些关于反码.补码的说明依旧头疼,还是记下些实用的方法吧.int -> byte可以直接使用强制类型转换: byte b = (byte) aInt;这个操作是直接截取int中最低一个字节,如果int大于255,则值就会变得面目全非了.对于通过InputStream.read()获取的in

【转】java中byte数组与int类型的转换(两种方式)----不错

原文网址:http://blog.csdn.net/piaojun_pj/article/details/5903009 java中byte数组与int类型的转换,在网络编程中这个算法是最基本的算法,我们都知道,在socket传输中,发送.者接收的数据都是 byte数组,但是int类型是4个byte组成的,如何把一个整形int转换成byte数组,同时如何把一个长度为4的byte数组转换为int类型.下面有两种方式. 第一种方法: public static byte[] int2byte(int

Java中byte与16进制字符串的互相转换

Java中byte用二进制表示占用8位,而我们知道16进制的每个字符需要用4位二进制位来表示(23 + 22 + 21 + 20 = 15),所以我们就可以把每个byte转换成两个相应的16进制字符,即把byte的高4位和低4位分别转换成相应的16进制字符H和L,并组合起来得到byte转换到16进制字符串的结果new String(H) + new String(L).即byte用十六进制表示只占2位. 同理,相反的转换也是将两个16进制字符转换成一个byte,原理同上. 根据以上原理,我们就可