实验五 输入输出流Word下载.docx
- 文档编号:20790857
- 上传时间:2023-01-25
- 格式:DOCX
- 页数:7
- 大小:38.44KB
实验五 输入输出流Word下载.docx
《实验五 输入输出流Word下载.docx》由会员分享,可在线阅读,更多相关《实验五 输入输出流Word下载.docx(7页珍藏版)》请在冰豆网上搜索。
Student.txt"
),
writeFile=newFile("
Hello.txt"
);
Strings="
欢迎来到北京welcome"
;
charb[]=s.toCharArray();
try{
FileWriterout=newFileWriter(readFile,true);
out.write(b);
out.close();
FileWritertofile=newFileWriter("
hello.txt"
for(inti=0;
i<
b.length;
i++)
{
b[i]=(char)(b[i]^'
w'
}
Stringsecret=newString(b);
System.out.println("
原文:
"
+s);
密文:
+secret);
tofile.write(secret);
tofile.close();
FileReaderinOne=newFileReader("
intt=0;
System.out.println("
存入后:
while((t=inOne.read(b,0,2))!
=-1)
{Stringstr=newString(b,0,2);
System.out.println(str);
}
inOne.close();
catch(IOExceptione){
System.out.println(e);
}
第2题读写基本类型数据
编写一个Java应用程序,将若干基本数据写入到一个文件,然后再按顺序读出。
packagefive;
/*第2题读写基本类型数据
*/
publicclassread{
{try{
FileOutputStreamos=newFileOutputStream("
data.txt"
DataOutputStreamoutdata=newDataOutputStream(os);
outdata.writeInt(99);
outdata.writeShort(23);
outdata.writeDouble(23.34535342132);
outdata.writeFloat(3.123221312f);
outdata.writeLong(2132445);
outdata.writeChar('
O'
outdata.writeByte
(2);
outdata.writeBoolean(true);
catch(IOExceptione){System.out.println("
int:
);
}
try{
FileInputStreamns=newFileInputStream("
DataInputStreamintdata=newDataInputStream(ns);
System.out.println("
+intdata.readInt());
short:
+intdata.readShort());
double:
+intdata.readDouble());
float:
+intdata.readFloat());
long:
+intdata.readLong());
char:
+intdata.readChar());
byte:
+intdata.readByte());
boolean:
+intdata.readBoolean());
catch(IOExceptione){}
第3题字符输入/输出流以及缓冲流的用法
编写一个Java应用程序,给已存在的文本文件添加行号。
要求该文本文件事先用文本编辑完毕,保存在C:
\code目录中,命名为Hello.txt.
实验提示:
可将BufferedWriter流和FileWriter流连接在一起,然后使用BufferedWriter流将数据写到目的地。
BufferedReader对象调用readLine()方法可读取文件的一行,BufferedWriter对象调用newLine()方法可向文件写入回行
/packagesix;
publicclasscode{
publicstaticvoidmain(String[]args){
FilereadFile=newFile("
writeFile=newFile("
C:
\\code\\hello.txt"
if(!
writeFile.getParentFile().exists())
writeFile.mkdir();
//charb[]="
欢迎来到北京welcome\nwelcome"
.toCharArray();
try{//FileWritert=newFileWriter(readFile,true);
//t.write(b);
//t.close();
BufferedReaderinTwo=newBufferedReader(inOne);
FileWritertofile=newFileWriter("
BufferedWriterout=newBufferedWriter(tofile);
Strings=null;
inti=0;
while((s=inTwo.readLine())!
=null){
i++;
out.write(i+"
out.newLine();
out.flush();
out.close();
tofile.close();
inOne=newFileReader("
inTwo=newBufferedReader(inOne);
=null)
{
System.out.println(s);
inTwo.close();
catch(IOExceptione){
System.out.println(e);
四、实验结果
编写源程序并上机调试通过,根据实验过程填写实验报告,并上交源程序代码。
提交电子版实验报告要求:
1、源代码要规范、有详细的注释;
每题以文件夹管理各个Java源文件;
2、运行结果截图+心得体会(实验报告)。
打包命名:
“学号姓名java实验几”:
如“2012085111小明java实验一”
下周上课前交给学委
选做题
1.对象流的使用Calendar类的用法参照书7.2)
编写一个Java应用程序,将一个Calendar对象写入文件,然后顺序读出该对象,并验证读出的对象是原始对象的克隆。
使用对象流写入或读入对象时,要保证对象是序列化的。
Calendar类实现了Serializable接口,其中接口中的方法对程序是不可见的,因此不需的在类中实现额外方法,Calendar类的对象是序列化对象。
当把一个序列化对象写入到对象输出流时,JVM就会Serializable接口中的方法。
使用对象流很容易获取一个序列化对象的克隆,只需将该对象写入到对象输出流,然后用对象输入流读回的对象就是原对象的一个克隆。
2.RandomAccessFile类的使用
使用RandomAccessFile流读取文件舍去前4行和后6行的内容,使用RandomAccessFile流将一个文件的内容倒置读出。
RandomAccessFile类中有一个方法seek(longa),用来移动RandomAccessFile流的读写位置,其中参数a确定读写位置距离文件开头的字节位置。
另外,流还可以调用getFilePointer()方法获取当前流在文件中的读写位置。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 实验五 输入输出流 实验 输入输出