System.out.println("Arguments"+(i+1)+":
"+args[i]);
}
}
}
}
2
packagecn.edu.nwsuaf.jp;
importjava.io.FileReader;
importjava.io.IOException;
publicclassFileViewer{
/**Definestheentrypointoftheprogram.*/
publicstaticvoidmain(String[]args){
System.out.println("Pleaseenterthefilepath:
");
try{
StringfileName="";
while(true){
/*1.*/intreadByte=System.in.read();
从键盘中读取文件名
/*2.*/if(readByte==-1||readByte=='\r')
break;判断readByte的数是否为-1或回车符
/*3.*/fileName+=(char)readByte;
}将按字节读到的数转化成字符,并最终转化成字符串
//ReadsthefileandprintsittotheSystem.outstream.
/*4.*/char[]buffer=newchar[20];
定义一个字符长度为20的数
/*5.*/FileReaderreader=newFileReader(fileName);将字符读入流与文件关联
while(true){
/*6.*/intlength=reader.read(buffer);
if(length<0)//Readsalongasthereismoredata.
break;若文件读入流读取到字符,则返回该字符的下标
/*7.*/Stringtext=newString(buffer,0,length);将数组buffer从0开始读取,读取length个数存入text中
System.out.print(text);
}
}catch(IOExceptione){
e.printStackTrace();
}
}
}
功能:
输入路径,读出指定路径下的文件内容
3
importjava.io.File;
importjava.io.FileReader;
importjava.io.FileWriter;
publicclassFileRWTest{
/**
*@paramargs
*/
publicstaticvoidmain(String[]args){
//TODOAuto-generatedmethodstub
Filefin=newFile("D:
//","Input.txt");
Filefout=newFile("D:
//","output.txt");
try{
if(!
fin.exists())
{
fin.createNewFile();
}
if(!
fout.exists())
{
fout.createNewFile();
}
FileReaderfi=newFileReader(fin);
FileWriterfo=newFileWriter(fout);
char[]cBuffer=newchar[1000];
inttemp=0;
while((temp=fi.read(cBuffer))!
=-1){
fo.write(cBuffer,0,temp);
}
fo.flush();
fo.close();
fi.close();
}catch(Exceptione){
e.printStackTrace();
}
}
}
4
importjava.io.*;
publicclassChange{
FileReaderf;
/**
*@paramargs
*/
publicstaticvoidmain(String[]args){
//TODOAuto-generatedmethodstub
FileReaderf;
try{
f=newFileReader("D:
\\Change.txt");
Filefile=newFile("D:
\\result.txt");
FileWriterfos=newFileWriter(file);
BufferedReaderr=newBufferedReader(f);
BufferedWriterw=newBufferedWriter(fos);
Stringaline;
intx=0;
inty=0;
while((aline=r.readLine())!
=null){
Stringstr=newString(aline);
char[]s=newchar[str.length()];
s=str.toCharArray();
for(inti=0;i{
if(s[i]>='a'&&s[i]<='z')
{
x++;
}
elseif(s[i]>='A'&&s[i]<='Z')
{
y++;
}
}
}
r.close();
w.close();
System.out.println("小写字母有:
"+x+"个");
System.out.println("大写字母有:
"+y+"个");
}catch(IOExceptione){
e.printStackTrace();
}
}
}
5
6
packageobjectobject;
importjava.io.*;
publicclassReadObject{
publicstaticvoidmain(Stringargs[]){
Studentstu=null;
try{
FileInputStreamfi=newFileInputStream("c:
\\date.ser");
ObjectInputStreamsi=newObjectInputStream(fi);
stu=(Student)si.readObject();
si.close();
System.out.println("ID:
"+stu.id+"name:
"+
stu.name+"age:
"+stu.age+"dept.:
"+stu.department);
}catch(Exceptione){
System.out.println(e.toString());}
}
}
packageobjectobject;
importjava.io.Serializable;
classStudentimplementsSerializable{
privatestaticfinallongserialVersionUID=1L;
intid;
intage;
Stringname;
Stringdepartment;
publicStudent(intid,Stringname,intage,Stringdepartment){
this.id=id;
this.name=name;
this.age=age;
this.department=department;
}
}
packageobjectobject;
importjava.io.*;
publicclassWriteObject{
publicstaticvoidmain(Stringargs[]){
Studentstu=newStudent(981036,"LiMing",16,"CSD");
try{
FileOutputStreamfo=newFileOutputStream("c:
\\date.ser");
ObjectOutputStreamso=newObjectOutputStream(fo);
so.writeObject(stu);
so.close();
}catch(Exceptione){}
}
}
经过这次实习,我对输入输出流的应用有了更好的掌握,对书本上的知识也能够学以致用。