import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.InputStream;
import java.io.OutputStream;
public class Demo {
public static void main(String[] args) {
// write1();
read3();
}
public static void write1() {
try {
OutputStream out = new FileOutputStream("F:\\lamp\\1.txt");
String info = "Hello World";
byte[] bytes = info.getBytes();
for (int i = 0; i < bytes.length; i++) {
out.write(bytes[i]); // 向文件中输出
}
out.close();
} catch (Exception e) {
}
}
/**
* 一次读一个字节
*/
public static void read1() {
try {
InputStream in = new FileInputStream("F:\\lamp\\1.txt");
int b = -1;
while ((b = in.read()) != -1) {
System.out.print((char) b);
}
in.close();
} catch (Exception e) {
e.printStackTrace();
}
}
/**
* 一次性读
*/
public static void read2() {
try {
File f = new File("F:\\lamp\\1.txt");
InputStream in = new FileInputStream(f);
// 根据文件大小构造字节数字
byte[] bytes = new byte[(int) f.length()];
int len = in.read(bytes);
System.out.println(new String(bytes));
System.out.println("len=" + len);
in.close();
} catch (Exception e) {
e.printStackTrace();
}
}
/**
* 每次读取指定大小字节
*/
public static void read3() {
try {
File f = new File("F:\\lamp\\1.txt");
InputStream in = new FileInputStream(f);
byte[] bytes = new byte[1024]; // 指定每次要读取的字节数组
int len = -1; // 每次取的实际长度s
StringBuilder sb = new StringBuilder();
while ((len = in.read(bytes)) != -1) {
sb.append(new String(bytes, 0, len));
}
in.close();
// 输出
System.out.println(sb);
} catch (Exception e) {
e.printStackTrace();
}
}
}
IO流之字节流
最新推荐文章于 2023-01-24 13:27:54 发布