java中如何读取输入流中一段固定长度的字节保存成一个文件?

如题所述

这个太简单了,不过你说的是在太模糊了,首先输入流是哪个流,有没有限制,如果有限制就不知道了,没有限制就太好办了。我想你是这个意思:使用某个输入流读取固定长度的字节,然后保存到一个文件中。读取固定长度不是难题,保存到一个文件中也不是问题,关键你要知道这个输入流的API方法,例如。FileInputStream,创建一个流,创建一个字节数组,然后使用流对象调用read(byte[] arr,int off,int len),arr是你创建的字节数组,off是起始地点,len是读取的数据长度。然后把arr写入到一个文件中,就实现保存了。
温馨提示:答案为网友推荐,仅供参考
第1个回答  2011-11-02
你好,我按照你的要求写了个简单的代码,请参阅

import java.io.BufferedInputStream;
import java.io.File;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;

public class Testsyn {
public static void main(String[] args) throws IOException {
InputStream in = new BufferedInputStream(System.in);//比如输入流来控制台
byte[] array = new byte[100];
in.read(array, 0, 10);//只从输入流中读取10个字节到array数组里
OutputStream out = new FileOutputStream(new File("d:\\1.txt"));//输出流到d:\1.txt
out.write(array, 0, 5);//可以只写5个字节
}
}本回答被网友采纳
第2个回答  2015-07-22
计算:1kb = 8b, 1M = 1024kb

1汉字=2字节
1字节(Byte)=8字位=8个二进制数
Byte[] by = bew Byte[长度]
OutputStream out = new FileOutputStream(new File("a.txt"));
out.write(by, 0, 字节数);
相似回答