class FileReaderDemo
{
public static void main(String[] args)
{
//调用一个文件读取流对象,和指定名称文件相关联
//要保证该文件已经存在,如果不存在,会发生FileNotFoundException
FileReader fr=new FileReader("demo.txt");
//调用读取流对象的read方法
//read():一次读一个字符,而且会自动往下读
int ch=0;
while ((ch=fr.read())!=-1)
{
System.out.println((char)ch);
}
/*
int ch1=fr.read();
System.out.println("ch1="+(char)ch1);
int ch2=fr.read();
System.out.println("ch2="+(char)ch2);*/
/*
while (true)
{
int ch=fr.read();
if (ch==-1)
break;
System.out.println("ch="+(char)ch);
}*/
fr.close();
}
}
--------------------------------
/*
第二种方法:通过字符数组进行读取
*/
import java.io.*;
class FileReaderDemo2
{
public static void main(String[] args)
{
FileReader fr=new FileReader("demo.txt");
//定义一个字符数组,用于存储读到的字符
//该read(char[])返回读到字符的个数。
char[] buf=new char[1024];
int num=0;
while ((num=fr.read(buf))!=-1)
{
System.out.println(new String(buf,0,num));
}
fr.close();
}
}
---------------------------------------
import java.io.*;
class FileWriterDemo
{
public static void main(String[] args) throw IOException
{
//创建一个FileWriter对象,该数据要对象一被初始化就要明确被操作的文件
//该文件会被创建到指定目录,如果该目录下已有同名文件,就被覆盖
//其实该部就是明确数据存放目的地
FileWriter fw=new FileWriter("demo.txt");
//调用write方法,将字符串写入流中
fw.write("abcde");
//刷新流对象中的缓冲的数据
//将数据刷到目的地
//fw.flush();
//fw.write("gg");
//fw.flush();
//关闭流资源,但是关闭之前会刷新一次内部的缓冲数据
//将数据刷到目的地
//和flush区别:flush刷新后,流可以继续使用,close刷新后,流关闭
fw.close();
fw.write("gg");
System.out.println("Hello World!");
}
}
------------------------------
/*
演示对已有文件的数据续写。
*/
import java.io.*;
class FileWriterDemo3
{
public static void main(String[] args)
{
//传递一个true参数,代表不覆盖已有的文件,并在已有文件的末尾处进行数据续写
FileWriter fw=new FileWriter("demo.txt",true);
fw.write("nihao\nxiexie");
fw.close();
}
}
---------------------
import java.util.*;
import java.text.*;
class CalendarDemo2
{
public static void main(String[] args)
{
Calendar c=Calendar.getInstance();
//c.set(2012,2,23);
c.add(Calendar.YEAR,-4);
printCalendar(c);
System.out.println("Hello World!");
}
public static void printCalendar(Calendar c)
{
String [] mons={"一月","二月","三月","四月",
"五月","六月","七月","八月",
"九月","十月","十一月","十二月"};
int index=c.get(Calendar.MONTH);
sop(c.get(Calendar.YEAR)+"年");
//sop((c.get(Calendar.MONTH)+1)+"月");
sop(mons[index]);
sop(c.get(Calendar.DAY_OF_MONTH)+"日");
}
public static void sop(Object obj)
{
System.out.println(obj);
}
}