❶ java如何自定義的byte[]數組寫入文件
/**
*位元組數據原型的形式寫入到文件
*@version2010-4-25
*/
publicclassBitIO{
粗拿棚/**
*測試入口
*@paramargsarguments
*/
publicstaticvoidmain(String[]args){
byte[]buffer={33,66,99,88};
FilefileInst=newFile("C:\BitIO.txt");
try{
FileWriterfw=newFileWriter(fileInst);
岩則for(bytei:buffer){
敏物fw.write(String.valueOf((int)i));
}
fw.flush();
}catch(FileNotFoundExceptione){
e.printStackTrace();
}catch(IOExceptionioe){
ioe.printStackTrace();
}
}
}
❷ java將pdf文件寫入bytes[]
public static void main(String[] args) throws IOException {
//現在我有一個Byte[]
byte[] bs = new byte[]{1,2,3,4,5};
//確定寫出文件的位置
File file = new File("Test.txt");
//建立輸出位元組流
FileOutputStream fos = new FileOutputStream(file);
//用FileOutputStream 的write方法寫入位元組數組
fos.write(bs);
System.out.println("寫入成功");
//為了節省IO流的開銷,需要關閉
fos.close();
}
}
總結:因為你寫入的是位元組,所以會顯示亂碼。位元組流就是這樣的,用於讀取文件和復制任何東西。
❸ Java如何自定義的byte[]數組寫入文件
FileOutputStream.write(byte[] bytes)寫入文件的是二進制碼,你寫入二進制1和0是不可見字元,必須用二進制/16進制文件格式打開才可以看到,
❹ java怎樣把一個byte數組保存成圖片到硬碟上
轉成的圖片 要麼是個文件File 要麼是個文件流. 那都只需要通過輸入輸出流往磁碟上寫就行了
❺ Java:內存中已經有了一個對象,如何使用ByteArrayOutputStream將該對象寫入文件呢
ByteArrayOutputStream是將內存中的byte數據作為輸出目標,
寫入到文件則需要打開文件流,
內存中的對象要持久化有兩種方式,一種是直接使用對象的序列化介面,該對象必須實現Serializable介面;另外一種自己寫對象序列化介面。
1、ByteArrayOutputStream要寫到文件可以通過writeTo方法,但是這樣顯然太啰嗦了,需要控制flush時機。
2、如果是對象已經實現序列化介面直接使用如下方式
ObjectOutputStreamo=newObjectOutputStream(newFileOutputStream("filename"));
o.writeObject(obj);
❻ java 怎麼將數據寫入TXT文件
定義一個輸出文件,然後輸出就可以了,具體見下面的代碼
importjava.io.*;
publicclassStreamDemo
{
publicstaticvoidmain(Stringargs[])
{
Filef=newFile("c:\temp.txt");
OutputStreamout=null;
try
{
out=newFileOutputStream(f);
}
catch(FileNotFoundExceptione)
{
e.printStackTrace();
}
//將字元串轉成位元組數組
byteb[]="HelloWorld!!!".getBytes();
try
{
//將byte數組寫入到文件之中
out.write(b);
}
catch(IOExceptione1)
{
e1.printStackTrace();
}
try
{
out.close();
}
catch(IOExceptione2)
{
e2.printStackTrace();
}//以下為讀文件操作
InputStreamin=null;
try
{
in=newFileInputStream(f);
}
catch(FileNotFoundExceptione3)
{
e3.printStackTrace();
}
//開辟一個空間用於接收文件讀進來的數據
byteb1[]=newbyte[1024];
inti=0;
try
{
//將b1的引用傳遞到read()方法之中,同時此方法返回讀入數據的個數
i=in.read(b1);
}
catch(IOExceptione4)
{
e4.printStackTrace();
}
try
{
in.close();
}
catch(IOExceptione5)
{
e5.printStackTrace();
}
//將byte數組轉換為字元串輸出
System.out.println(newString(b1,0,i));
}
}