JAVA例10.1-10.10及实验50-57.doc_第1页
JAVA例10.1-10.10及实验50-57.doc_第2页
JAVA例10.1-10.10及实验50-57.doc_第3页
JAVA例10.1-10.10及实验50-57.doc_第4页
JAVA例10.1-10.10及实验50-57.doc_第5页
已阅读5页,还剩20页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

10.1 在程序中创建一个文本文件myfile.txt,写入从键盘输入的一串数字,然后再读取该文件并将该文本文件内容显示再屏幕上编写程序如下 /filename:App10_1.java 利用输入输出流写文本文件import java.io.*;class App10_1 public static void main(String args) FileInputStream fin; /声明文件输入流对象fin FileOutputStream fout; /声明文件输出流对象fout char ch; int date; try fin=new FileInputStream(FileDescriptor.in); /创建文件输入流对象fim fout= new FileOutputStream(g:cgjmyfile.txt); /创建文件输出流对象fout System.out.println(请输入一串字符,并以 # 结束:); while(ch=(char)fin.read()!=#) fout.write(ch); fin.close(); fout.close(); System.out.println(); fin=new FileInputStream(d:cgjmyfile.txt); fout=new FileOutputStream(FileDescriptor.out); while(fin.available()0) date=fin.read(); fout.write(date); fin.close(); fout.close(); catch(FileNotFoundException e) System.out.println(文件没找到!); catch(IOException e) 运行结果如下例10.2 用FileInputStream和FileOutputStream来实现对二进制图像文件的复制编写程序如下/filename:App10_2.java 读写二进制文件import java.io.*;public class App10_2 public static void main(String args) throws IOException FileInputStream fi=new FileInputStream(g:cgj风景.jpg); FileOutputStream fo=new FileOutputStream(g:cgj风景1.jpg); System.out.println(文件的大小=+fi.available(); /输入文件的大小 byte b=new bytefi.available(); /创建byte类型的数组b fi.read(b); /将图形文件读入b数组 fo.write(b); /将b数组里的数据写入新文件风景1.jpg System.out.println(文件已被复制并被更名); fi.close(); fo.close(); 运行结果如下例10.3 利用数据输入输出流将不同类型的数据写到一个文件temp中,然后再读出来显示在屏幕上编写程序如下/filename:App10_3.java 数据输入流的应用import java.io.*;public class App10_3public static void main(String args)(FileOutputStream fout;DataOutputStream dout;FileInputStream fin;DataInputStream din;tryfout=new FileOutputStream(d:temp);dout=new DataOutputStream(fout);dout.writeInt(10);dout.writeLong(12345);dout.writeFloat(3.1415926f);dout.writeDouble(987654321.123);dout.writeBoolean(true);dout.writeChars(Goodbye!);dout.close();catch(IOException e) tryfin=new FileInputStream(d:temp);din=new DataInputStream(fin);System.out.println(din.readInt();System.out.println(din.readLong();System.out.println(din.readFloat();System.out.println(din.readDouble();System.out.println(din.readBoolean();char ch;while (ch=din.readChar()!=0)System.out.print(ch);din.close();catch(FileNotFoundException e)System.out.println(文件未找到!);catch(IOException e) 运行程序如下例10.4 键盘输入一串字符。然后再显示在屏幕上,并显示System.in和System.out所属的类编写程序如下/filename:App10_4.javaimport java.io.*;public class App10_4public static void main(String args)trybyte b=new byte128; /设置输入缓冲区System.out.print(请输入字符:);int count=System.in.read(b); /读取标准输入流,将回车符和换行符也存放到b数组中System.out.println(输入的是:);for(int i=0;icount;i+)System.out.print(bi+ ); /输入数组b中元素的ASCII值System.out.println();for(int i=0;icount-2;i+)System.out.print(char)bi+ ); /换字符方式输出数组b的元素System.out.println();System.out.println(输入的字符个数为+count);Class InClass=System.in.getClass();Class OutClass=System.out.getClass();System.out.println(in所在的类是:+InClass.toString();System.out.println(out所在的类是:+OutClass.toString();catch(IOException e) 运行程序如下例10.5利用FileReader类读取文本文件“d:javatest.txt”,编写程序如下 /filename:App10_5.javaimport java.io.*;public class App10_5 public static void main (String args) throws IOException char c=new char500; FileReader fr=new FileReader(g:javatest.txt); int num=fr.read(c); String str=new String(c,0,num); System.out.print(读取的字符个数为:+num+,其内容如下:); System.out.println(str); fr.close(); 运行结果如下例10.6/filename App10_6.java FileWriter类的使用import java.io.*;public class App10_6public static void main(String args) throws IOExceptionFileWriter fw=new FileWriter(e:myjavatest.txt);char c=H,e,l,l,o,r,n;String str=欢迎使用JAVA!;fw.write(c); /将字符数组写到文件中fw.write(str); /将字符串写到文件中fw.close();例10.7/filename App10_7.javaimport java.io.*;public class App10_7public static void main(String args) throws IOExceptionString thisLine;int count=0;tryFileReader fr=new FileReader(e:myjavakeben10test.txt);BufferedReader bfr=new BufferedReader(fr);/每次读取一行,直到文件结束while (thisLine=bfr.readLine()!=null); count+; /计算读取的行数System.out.println(thisLine);System.out.println(共读取了+count+行);bfr.close(); /关闭文件catch(IOException ioe)System.out.println(错误!+ioe);例10.8/filename App10_8.javaimport java.io.*;public class App10_8public static void main(String args)throws IOExceptionString str=new String();tryBufferedReader in=new BufferedReader(new FileReader(e:myjavakeben10test.txt);BufferedWriter out=new BufferedWriter(new FileWriter(e:myjavakeben10test.txt);while(str=in.readLine()!=null)System.out.println(str); /在显示器上输出out.write(str); /将读取到的一行数据写入输出流中out.newLine(); /写入回车换行符out.flush(); /将缓冲区的数据全部写入文件中in.close();out.close();catch(IOException ioe)System.out.println(错误!+ioe);例10.9/filename App10_9.javaimport java.io.*;public class App10_9public static void main(String args)throws IOExceptionString str=new String();tryInputStreamReader isr=new InputStreamReader(System.in);BufferedReader inp=new BufferedReader(isr);String sdir=e:cgj;String sfile;File fdir1=new File(sdir);if(fdir1.exists()&fdir1.isDirectory()System.out.println(文件夹:+sdir+已经存在);for(int i=0;ifdir1.list().length;i+)System.out.println(fdir1.list()i);File fdir2=new File(e:cgjtemp);if(!fdir2.exists()fdir2.mkdir();System.out.println();System.out.println(建立新文件夹后的文件列表);for(int i=0;ifdir1.list().length;i+)System.out.println(fdir1.list()i);System.out.print(请输入该文件夹中的一个文件名:);sfile=inp.readLine(); /从键盘读取数据File ffile=new File(fdir1,sfile);if(ffile.isFile()System.out.print(文件名:+ffile.getName();System.out.print(;所在文件夹:+ffile.getPath();System.out.println(;文件大小:+ffile.length()+字节);if(inp!=null)inp.close();catch(IOException e)System.out.println(e.toString();例10.10/filename App10_10.javaimport java.io.*;public class App10_10public static void main(String args) throws IOExceptionStringBuffer stfDir=new StringBuffer();System.out.println(请输入文件所在的路径);char ch;while(ch=(char)System.in.read()!=r)stfDir.append(ch);File dir=new File(stfDir.toString();System.out.println(请输入欲读取的文件名);StringBuffer stfFileName=new StringBuffer();char c;while(c=(char)System.in.read()!=r)stfFileName.append(c);stfFileName.replace(0,1,); /删除上次输入并回车后存留在缓存区中的的nFile readFrom=new File(dir,stfFileName.toString();if(readFrom.isFile()&readFrom.canWrite()&readFrom.canRead()RandomAccessFile rafFile=new RandomAccessFile(readFrom,rw);while(rafFile.getFilePointer()rafFile.length()System.out.println(rafFile.readLine();rafFile.close();elseSystem.out.println(文件不可读!);实验50 实验要求: 编写一个Java程序,在main()中生成FileInputStream的一个实例,使它能打开文件myfile.txt.并能够把文件显示在屏幕上编写程序如下/ShowFile.javaimport java.io.*;class ShowFile public static void main(String args) throws IOExceptionint i;FileInputStream fin=new FileInputStream(myfile.txt);doi=fin.read();if(i!=-1)System.out.print(char)i);while(i!=1);fin.close();运行结果如下实验51实验要求:编写一个Java程序,把文件myfile.txt中的内容复制到文件yourfile.txt文件中,编写程序如下/CopyFile.javaimport java.io.*;class CopyFilepublic static void main(String args) throws IOExceptionint i;FileInputStream fin;FileOutputStream fout;fin=new FileInputStream(myfile.txt);/为fin实例化,指向的文件名为“myfile.txt”fout=new FileOutputStream(yourfile.txt);/为fout实例化,指向的文件名为“yourfile.txt”doi=fin.read();if(i!=-1)fout.write(i);while(i!=1);fin.close();fout.close();System.out.print(myfile.txt内容已经被复制到yourfile.txt中);运行结果如下53 编写一个Java程序,将字符串写入到文件中编写程序如下/WriteFile.javaimport java.io.*;public class WriteFile public static void main(String args)throws IOExceptionFileWriter fw=new FileWriter(test.txt);String str1=广东金融学院;String str2=欢迎使用java!;fw.write(str1);fw.write(str2);fw.close();System.out.println(内容已写入到文件test.txt中);运行结果如下实验54File1import java.io.*;public class File1public static void main(String args) throws IOException/这里需要带参执行程序,参数为需要创建的一个或多个文件名if(args.length=0)System.out.println(没有需要创建的文件);System.exit(1);for(int i=0;iargs.length;i+)new File(argsi).createNewFile();File2import java.io.*;public class File2public static void main(String args)throws IOExceptionBufferedWriter out=new BufferedWriter(new FileWriter(a.txt);out.write(广东技术师范学院);out.newLine();out.write(Java程序设计);out.flush();out.close();File3import java.io.*;public class File3public static void main(String args)throws IOExceptionString thisLine;BufferedReader in=new BufferedReader(new FileReader(a.txt);while(thisLine=in.readLine()!=null) /每次读取一行,直至文件结束System.out.println(thisLine);in.close();File4import java.io.*;import java.util.*;public class File4public static void main(String args)throws IOExceptionif(args.length=0)System.out.println(缺少文件名);System.exit(1);for(int i=0;iargs.length;i+)status(argsi);public static void status(String fileName)throws IOExceptionSystem.out.println(-+fileName+-);File f=new File(fileName); /创建File类的对象/see if it actually existsif(!f.exists()System.out.println(文件没有找到);System.out.println();return;System.out.println(文件全名为+f.getCanonicalPath();String p=f.getParent(); /显示文件的父目录if(p!=null)System.out.println(Parent directory:+p);if(f.canRead()System.out.println(File is readable);if(f.canWrite()System.out.println(File is writable);Date d=new Date();d.setTime(f.lastModified();System.out.println(Last modified+d);if(f.isFile()System.out.println(文件大小是+f.length()+bytes);else if(f.isDirectory()System.out.println(它是目录);elseSystem.out.println(既不是文件也不是目录);System.out.println();File5import java.io.*;public class File5public static void main(String args)/查看当前目录String dir=new java.io.File(.).list();java.util.Arrays.sort(dir);for(int i=0;idir.length;i+)System.out.println(diri);/查看系统驱动器列表File drives=File.listRoots();for(int i=0;idrives.length;i+)System.out.println(drivesi);File6import java.io.*;public class File6public static void main(String args)throws IOExceptionFile target=new File(a.txt);if(!target.exists()System.out.println(文件不存在);else if(target.delete()System.out.println(文件被删除);elseSystem.out.println(文件不能删除);实验55/BaseData.javaimport java.io.*;public class BaseDatapublic static void main(String args)FileOutputStream fout;DataOutputStream dout;FileInputStream fin;DataInputStream din;File f=new File(baseData.txt);tryf.createNewFile();catch(IOException e)tryfout=new FileOutputStream(f);dout=new DataOutputStream(fout);dout.writeInt(10);dout.writeLong(12345);dout.writeFloat(3.1415926f);dout.writeDouble(987654321.123);dout.writeBoolean(true);dout.close();catch(IOException e)tryfin=new FileInputStream(f);din=new DataInputStream(fin);System.out.println(din.readInt();System.out.println(din.readLong();System.out.println(din.readFloat();System.out.println(din.readDouble();System.out.println(din.readBoolean();din.close();catch(FileNotFoundException e)System.out.println(文件未找到!);catch(IOException e)实验56/ReadWriteObject.javaimport java.io.*;class Student implements SerializableString name;int age;String dept;public Student(String newName,int newAge,String newDept)name=newName;age=newAge;dept=newDept;public String toString()return name+ +age+ +dept;public class ReadWriteObjectpublic static void main(String args)Student w1=new Student(张三,20,计算机系);Student w2=new Student(李四,21,金融系);FileOutputStream fout;ObjectOutputStream dout;FileInputStream fin;ObjectInputStream din;File f=new File(ReadWriteObject.txt);tryf.createNewFile();catch(IOException e)Syst

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论