




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
程序使用FileInputStream类和FileOutputStream类实现文件复制使用FileInputStream类和FileOutputStream类实现文件复制,如果指定的文件夹不存在,则要求先创建相应的文件夹。复制文件内容时,如果数据大小多于1024字节时,一次读取或写入1024字节的数据。如果剩余的数据少于1024字节,则一位一位读出或写入数据。importjava.io.File;importjava.io.FileInputStream;importjava.io.FileOutputStream;复制使用FileInputStream类和FileOutputStream类实现文件复制,如果指定的文件夹不存在,则要求先创建相应的文件夹。复制文件内容时,如果数据大小多于1024字节时,一次读取或写入1024字节的数据。如果剩余的数据少于1024字节,则一位一位读出或写入数据。importjava.io.File;importjava.io.FileInputStream;importjava.io.FileOutputStream;复制importjava.io.FileNotFoundException;importjava.io.IOException;publicclassTestFileStream7_2{
privatestaticvoidcopyFile(StringstrSourceFile,StringstrTargetFile){复制
StringcurrentDir=System.getProperty("user.dir");//获取系统当前文件夹 StringstrSource=currentDir+"\\"+strSourceFile; StringstrTarget=currentDir+"\\"+strTargetFile; StringpathSource=strSource.substring(0,strSource.lastIndexOf("\\")); StringpathTarget=strTarget.substring(0,strTarget.lastIndexOf("\\"));复制
System.out.println("源文件的存放路径为:"+pathSource); System.out.println("目标文件的存放路径为:"+pathTarget); byte[]buffer=newbyte[1024];//一次读取数据的大小 FiletargetDir=newFile(pathTarget); if(!targetDir.exists()){ System.out.println("\""+pathTarget+"\"暂不存在,先创建该文件夹"); newFile(pathTarget).mkdirs();复制 } try{ //创建文件输入 //FilesourceFile=newFile(strSource); FileInputStreamfInputStream=newFileInputStream(strSource);//sourceFile //创建文件输出流 //FiletargetFile=newFile(strTarget); FileOutputStreamfOutputStream=new复制FileOutputStream(strTarget);//targetFile while(true){ if(fInputStream.available()>1024){ fInputStream.read(buffer);//从文件输入流读出1024字节的数据 fOutputStream.write(buffer);//将1024字节的数据写入目的文件 }else{ //剩余的数据比1024字节少,一位一位读出再写入目标文件复制intremain=0; while((remain=fInputStream.read())!=-1){//取得未读取的数据长度 fOutputStream.write(remain); } break; } } System.out.println("文件复制完成"); fInputStream.close();复制fOutputStream.close(); }catch(FileNotFoundExceptionex){ System.out.println("源文件不存在!"); }catch(IOExceptionex){ ex.printStackTrace(); } } publicstaticvoidmain(String[]args){复制copyFile("text\\testFile7_2.txt","备用文件夹\\testFile7_2.txt"); }}importjava.io.File;importjava.io.FileInputStream;importjava.io.FileOutputStream;importjava.io.BufferedInputStream;复制importjava.io.BufferedOutputStream;importjava.io.FileNotFoundException;importjava.io.IOException;publicclassTestBufferedStream7_2_1{ privatestaticvoidcopyFile(StringstrSourceFile,StringstrTargetFile){ StringcurrentDir=System.getProperty("user.dir");//获取当前文件夹复制
StringstrSource=currentDir+"\\"+strSourceFile; StringstrTarget=currentDir+"\\"+strTargetFile; StringpathTarget=strTarget.substring(0,strTarget.lastIndexOf("\\")); byte[]buffer=newbyte[1];//一次读取数据的大小 FiletargetDir=newFile(pathTarget); if(!targetDir.exists()){复制System.out.println("\""+pathTarget+"\"暂不存在,先创建该文件夹"); newFile(pathTarget).mkdirs(); } try{ //创建文件输入 FilesourceFile=newFile(strSource); FileInputStreamfInputStream=newFileInputStream(sourceFile);复制BufferedInputStreambInputStream=newBufferedInputStream( fInputStream); //创建文件输出流 FiletargetFile=newFile(strTarget); FileOutputStreamfOutputStream=newFileOutputStream(targetFile);
复制 BufferedOutputStreambOutputStream=newBufferedOutputStream( fOutputStream);System.out.println("被复制文件的长度为:"+sourceFile.length()+"字节"); while(bInputStream.read(buffer)!=-1){ bOutputStream.write(buffer);//写入缓冲区 }复制bOutputStream.flush();//将缓冲区中的数据全部写入目标文件 bInputStream.close(); bOutputStream.close(); fInputStream.close(); fOutputStream.close();System.out.println("文件复制完成"); }catch(FileNotFoundExceptionex){复制System.out.println("源文件不存在!"); }catch(IOExceptionex){ ex.printStackTrace(); } } publicstaticvoidmain(String[]args){复制copyFile("text\\testFile7_2_1.txt","备用文件夹\\testFile7_2_1.txt"); }}importjava.io.DataInputStream;importjava.io.DataOutputStream;importjava.io.FileInputStream;复制importjava.io.FileOutputStream;importjava.io.IOException;publicclassTestDataStream7_2_2{ privatestaticvoidrwBaseData(StringstrFileName)throwsIOException{ StringcurrentDir=System.getProperty("user.dir");//获取当前文件夹复制
StringstrTarget=currentDir+"\\"+strFileName; String[]goodsInfoName={"商品编码","商品名称","价格","数量"}; FileInputStreamfileInput; FileOutputStreamfileOutput; DataInputStreamdataInput;DataOutputStreamdateOut; fileOutput=newFileOutputStream(strTarget);复制
dateOut=newDataOutputStream(fileOutput); //将数据写入文件中,目标是文件 for(Stringname:goodsInfoName){ dateOut.writeUTF(name); } dateOut.writeUTF("353051"); dateOut.writeUTF("三星S5830"); dateOut.writeDouble(2058.00);复制
dateOut.writeInt(2); System.out.println("数据写入文件完成"); fileOutput.close(); dateOut.close(); //将数据从文件中读出,在屏幕上输出 System.out.println("数据从文件中读出,显示在屏幕上"); fileInput=newFileInputStream(strTarget); dataInput=newDataInputStream(fileInput);复制
for(inti=0;i<goodsInfoName.length;i++){ if(i<goodsInfoName.length-1){ System.out.print(dataInput.readUTF()+""); }else{ System.out.println(dataInput.readUTF()); } } System.out.print(dataInput.readUTF()+"");复制
System.out.print(dataInput.readUTF()+""); System.out.print(dataInput.readDouble()+""); System.out.println(dataInput.readInt()); dataInput.close();//关闭输入流 } publicstaticvoidmain(String[]args)throwsIOException{ rwBaseData("text\\testFile7_2_2.txt");复制}}importjava.io.DataInputStream;importjava.io.DataOutputStream;importjava.io.FileInputStream;importjava.io.FileOutputStream;importjava.io.IOException;复制publicclassTestDataStream7_2_2{ privatestaticvoidrwBaseData(StringstrFileName)throwsIOException{ StringcurrentDir=System.getProperty("user.dir");//获取当前文件夹 StringstrTarget=currentDir+"\\"+strFileName; String[]goodsInfoName={"商品编码","商品名称","价格","数量"};复制publicclassTestDataStream7_2_2{ privatestaticvoidrwBaseData(StringstrFileName)throwsIOException{ StringcurrentDir=System.getProperty("user.dir");//获取当前文件夹 StringstrTarget=currentDir+"\\"+strFileName; String[]goodsInfoName={"商品编码","商品名称","价格","数量"};复制 dateOut.writeUTF(name); } dateOut.writeUTF("353051"); dateOut.writeUTF("三星S5830"); dateOut.writeDouble(2058.00); dateOut.writeInt(2); System.out.println("数据写入文件完成");
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025至2030年中国胗串数据监测研究报告
- 2025年度高科技农业园区土地租赁合同书
- 二零二五年度水资源综合利用可行性研究报告编制合同
- 二零二五年度电视购销安装合同附带智能系统接入服务
- 2025至2030年中国结晶器导流水套数据监测研究报告
- 2025至2030年中国网带式电阻炉马弗罐数据监测研究报告
- 煤炭行业市场拓展与销售渠道合作协议书(2025年度)
- 2025年度科研实验室设施建设施工合同
- 二零二五年度租赁房屋安全与责任划分合同
- 加油站年度解除合同范本(2025年)
- 儿科抗生素使用
- 征兵心理测试
- 绿化工程承包合同 绿化工程承包合同范本(二篇)
- 建筑财务出纳年终总结PPT模板下载
- GB/T 9574-2001橡胶和塑料软管及软管组合件试验压力、爆破压力与设计工作压力的比率
- 旋挖桩安全专项施工方案
- 统编版高中语文选择性必修下册教学计划
- 跨文化沟通技巧课件
- 三位数乘一位数练习题(300道)
- 北师大版八年级下册数学全册教案完整版教学设计
- 长白县巡游出租汽车驾驶员从业资格-区域科目考试题库(含答案)
评论
0/150
提交评论