从一个文本文件中读取数据
public class FileInputStreamDemo1 {
/**
* 使用InputStream抽象类的子类FileInputStream类
* 从一个文件中读取流数据
*/
public static void test1() {
try {
FileInputStream myStream = new FileInputStream("src/a.txt");
int a = 0;
while((a=myStream.read())!=-1){ //从a.txt读取内容一直到文件的末尾
System.out.print((char)a);
}
myStream.close();
} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
}
public static void main(String[] args) {
test1();
}
}
简单的输出流
输入一个字符到文本中
public class Demo1 {
/**
* 输入一个字符到文件中
*/
public static void test1() {
try {
OutputStream os = new FileOutputStream("src/b.txt");
os.write(97);
os.flush();
os.close();
} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
}
运行结果为a,因为ascii码97对应的字符为‘a’;
输出一个数组
/**
* 输出一个数组
*/
public static void test2() {
byte myArray[] = new byte[5];
myArray[0]=97;
myArray[1]=98;
myArray[2]=99;
myArray[3]=100;
myArray[4]=101;
try {
OutputStream os = new FileOutputStream("src/b.txt");
os.write(myArray);
os.flush();
os.close();
} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
}
输出结果为abcde
输出字符串
public static void test3() {
String myContent = "I am a good man!";
try {
OutputStream os = new FileOutputStream("src/b.txt");
os.write(myContent.getBytes());
os.flush();
os.close();
} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
}
运行结果为:I am a good man! 。
将一个文件的内容输出到另一个文件中
public static void copy(){
try
{
FileInputStream myStream = new FileInputStream("src/1.png");
OutputStream os = new FileOutputStream("2.jpg");
int a = 0;
while((a = myStream.read())!=-1){ //一直读到文件的末尾
os.write((char)a);
}
os.flush();
os.close();
} catch (FileNotFoundException e)
{
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e)
{
// TODO Auto-generated catch block
e.printStackTrace();
}
}