天天看點

鑒客 InputStream與String,Byte之間互轉

import

java.io.ByteArrayInputStream;

002

import

java.io.ByteArrayOutputStream;

003

import

java.io.IOException;

004

import

java.io.InputStream;

005

006

012

public

class

InputStreamUtils {

013

014

final

static

int

BUFFER_SIZE =

4096

;

015

016

023

public

static

String InputStreamTOString(InputStream in)

throws

Exception{

024

025

ByteArrayOutputStream outStream =

new

ByteArrayOutputStream();

026

byte

[] data =

new

byte

[BUFFER_SIZE];

027

int

count = -

1

;

028

while

((count = in.read(data,

,BUFFER_SIZE)) != -

1

)

029

outStream.write(data,

, count);

030

031

data =

null

;

032

return

new

String(outStream.toByteArray(),

"ISO-8859-1"

);

033

}

034

035

042

public

static

String InputStreamTOString(InputStream in,String encoding)

throws

Exception{

043

044

ByteArrayOutputStream outStream =

new

ByteArrayOutputStream();

045

byte

[] data =

new

byte

[BUFFER_SIZE];

046

int

count = -

1

;

047

while

((count = in.read(data,

,BUFFER_SIZE)) != -

1

)

048

outStream.write(data,

, count);

049

050

data =

null

;

051

return

new

String(outStream.toByteArray(),

"ISO-8859-1"

);

052

}

053

054

060

public

static

InputStream StringTOInputStream(String in)

throws

Exception{

061

062

ByteArrayInputStream is =

new

ByteArrayInputStream(in.getBytes(

"ISO-8859-1"

));

063

return

is;

064

}

065

066

072

public

static

byte

[] InputStreamTOByte(InputStream in)

throws

IOException{

073

074

ByteArrayOutputStream outStream =

new

ByteArrayOutputStream();

075

byte

[] data =

new

byte

[BUFFER_SIZE];

076

int

count = -

1

;

077

while

((count = in.read(data,

,BUFFER_SIZE)) != -

1

)

078

outStream.write(data,

, count);

079

080

data =

null

;

081

return

outStream.toByteArray();

082

}

083

084

090

public

static

InputStream byteTOInputStream(

byte

[] in)

throws

Exception{

091

092

ByteArrayInputStream is =

new

ByteArrayInputStream(in);

093

return

is;

094

}

095

096

102

public

static

String byteTOString(

byte

[] in)

throws

Exception{

103

104

InputStream is = byteTOInputStream(in);

105

return

InputStreamTOString(is);

106

}

107

108

}