package com.harenmu.io;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.IOException;
public class FileInputStreamTest {
public static void main(String[] args) {
FileInputStream fis = null;
try {
fis = new FileInputStream("C:\\Users\\爱蜜莉亚一生\\Desktop\\文件\\1.txt");
//总字节数量
System.out.println("总字节数量:" + fis.available());
/*while(true){
int readData = fis.read();
if(readData == -1){
break;
}
System.out.println(readData);
}*/
//改造while循环
/*int readData = 0;
while((readData = fis.read()) != -1){
System.out.println(readData);
}*/
byte[] bytes = new byte[4];
int readCount = 0;
while ((readCount = fis.read(bytes)) != -1){
//fis.skip(1); 读四个跳一个
System.out.print(new String(bytes,0,readCount));
}
System.out.println();
//这种方式不适合大文件
/* byte[] bytes = new byte[fis.available()];
int readCount = fis.read(bytes);
System.out.println(new String(bytes));*/
//返回流当中没有读到的字节数量
System.out.println("剩余字节数量:" + fis.available());
} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
} finally {
if (fis != null) {
try {
fis.close();
} catch (IOException e) {
e.printStackTrace();
}
}
}
}
}
package com.harenmu.io;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
public class FileOutputStreamTest {
public static void main(String[] args) {
FileOutputStream fos = null;
try {
//fos = new FileOutputStream("C:\\Users\\爱蜜莉亚一生\\Desktop\\文件\\1.txt")
fos = new FileOutputStream("C:\\Users\\爱蜜莉亚一生\\Desktop\\文件\\1.txt",true);
//开始写
byte[] bytes = {97,98,99,100,101};
//这种方式会将原文件清空在重新写入,谨慎使用。
//fos.write(bytes);
//fos.write(bytes);
String str = "你是一个大傻蛋";
byte[] bytes1 = str.getBytes();
fos.write(bytes1);
//结束,刷新
fos.flush();
} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
} finally {
if (fos != null) {
try {
fos.close();
} catch (IOException e) {
e.printStackTrace();
}
}
}
}
}