在说文件之前,首先要了解一下IO(输入输出)流;
大多数应用设备之间都会进行数据传输,这种数据传输抽象称为“流”,java中的流都放在java.io包中,所以称为IO流;
根据操作数据的不同将流分为字节流和字符流;
根据数据流向不同将流分为输入流和输出流;(程序从输入流中读取数据,向输出流中写入数据)
字节流:
在计算机中,所有文件都是以二进制的方式存在的;
字节流: 字节输入流(InputStream)和字节输出流(OutputStream);
InputStream常用方法
方法 | 功能 |
int read() | 从输入流中读取一个8位的字节,把它转化为0~255之间的整数,并返回这个整数 |
int read(byte[] b) | 从输入流中读取若干字节,把他保存到b中,返回读取字节的个数 |
int read(byte[] b ,int off int len) | 从输入流中读取若干字节,把他保存到b中,off:开始保存的下标;len读取数目 |
void close() | 关闭此输入流并释放与该输入流关联的所有资源 |
OutputStream常用方法
方法 | 功能 |
int write(int b) | 向输出流写入一个字节 |
int write(byte[] b) | 向输出流写入一个字节数组b |
int write(byte[] b ,int off int len) | 向输出流写入一个字节数组b';off:开始写入的下标;len写入数目 |
void flush() | 刷新此输出流并强制写出所有缓冲的输出字节 |
void close() | 关闭此输出流并释放与该输出流关联的所有资源 |
举例:
public class t1
{
public static void main(String[] args) {
FileInputStream inputStream=new FileInputStream("test.txt");
int b=0;
while (true)
{
b=inputStream.read();
if (b==-1)
{
break;
}
System.out.println(b);
}
inputStream.close();
}
}
public class t1
{
public static void main(String[] args) throws IOException {
FileOutputStream outputStream=new FileOutputStream("test.txt");
String str="hello world";
byte[] b=str.getBytes();
for(int i=0;i<b.length;i++)
{
outputStream.write(b[i]);
}
outputStream.close();
}
}
剩余的看下一篇