java io操作_Java 的IO操作(文件的读,写操作)
/* * FileEditor.java * * Created on 2006年9月13日, 下午2:22 * * To change this template, choose Tools | Template Manager * and open the template in the editor. */ /** *这是第一个类,没有利用缓冲技术 */ package fileeditor; import java.io.*; /** * * @author Administrator */ public class FileEditor { /** Creates a new instance of FileEditor */ public FileEditor() { } /*用于创建文件; */ public static void createFile(String fileName) throws IOException{ String file=fileName; FileWriter f=new FileWriter(file); f.close(); } /*用于更新文件内容; */ public static void updateFileContent(String fileName, byte[] content) throws IOException{ ByteArrayOutputStream f=new ByteArrayOutputStream(); byte[] buf=content; f.write(buf); OutputStream out=new FileOutputStream(fileName); f.writeTo(out); f.close(); out.close(); } /*用于获取文件内容(返回比特流(字节)数组) */ public static byte[] getFileContent(String fileName) throws IOException { int size; File f=new File(fileName); FileInputStream in = null; in = new FileInputStream(f); size=in.available(); byte[] content =new byte[size]; in.read(content,0,size); in.close(); return content; } /*用于删除文件; */ public static void deleteFile(String fileName) throws IOException{ String file=fileName; File f=new File(fileName); f.delete(); } } /** *这里是第二个类,用了缓冲技术 */ /*用于更新文件内容; */ public static void updateFileContent(String fileName, byte[] content) throws IOException{ byte[] buf=content; BufferedOutputStream out=new BufferedOutputStream(new FileOutputStream(fileName)); out.write(content); out.close(); } /*用于创建文件; */ public static void createFile(String fileName)throws IOException{ String file=fileName; FileWriter f=new FileWriter(file); f.close(); } /*用于获取文件内容 */ public static byte[] getFileContent(String fileName) throws IOException { File f=new File(fileName); BufferedInputStream in = new BufferedInputStream(new FileInputStream(f)); byte[] content =null; in.read(content); in.close(); return content; } /*用于删除文件; */ public static void deleteFile(String fileName) throws IOException{ String file=fileName; File f=new File(fileName); f.delete(); } /** *这是主函数 */ public static void main(String[] args) { byte[] content = null; // BufferedReader br=new BufferedReader(new InputStreamReader(System.in)); String fromFile = null; String toFile=null; try { fromFile="g://asd.jpg"; content=FileEditor.getFileContent(fromFile); for (int i=0;i<1000;i++){ toFile="g://test//"; toFile+=i; toFile=".jpg"; FileEditor.createFile(toFile);//创建目标文件; FileEditor.updateFileContent(toFile,content); } } catch (IOException ex) { ex.printStackTrace(); } } 在这次试验中,我想对比用缓冲流和不用缓冲流读写文件的效率,同一个文件(150k)复制1000份,在我机器上,不用缓冲的是4秒,用了也是4秒,所以没比较出来。后来当我试图复制更大的文件(30M)时出现了错误。 提示 :Exception in thread "main" java.lang.OutOfMemoryError: Java heap space : 我调试了半天,也没弄懂,希望高手指教。其他的问题没什么,这个类完全可以适用与小于30M的任何情况下使用。
java io操作_Java 的IO操作(文件的读,写操作)相关推荐
- 杭电Matlab与仿真-MATLAB基本语法(二)-数据文件的读/写操作
数据文件的读/写操作 实验目的 实验内容与要求 实验程序与结果 实验目的 学会matlab数据输入与输出基本操作: 熟悉matlab各种文件的输入输出方法,了解常用的图片及音频文件的输入输出: 掌握用 ...
- java 命名管道_Java中命名管道的并发读/写(在Windows上)
我正在尝试使用命名管道在Windows上使用命名管道提供C#应用程序和Java应用程序之间的通信,使用v01ver在此问题中描述的方法: How to open a Windows named pip ...
- java实现英文文件单词搜索系统_java对于目录下文件的单词查找操作代码实现
这篇文章主要介绍了java对于目录下文件的单词查找操作代码实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 写入文件的目录.代码通过找目录下的文件 ...
- java 流压缩_java之IO流:压缩文件
在java的学习中,IO流是一个避不开的话题.在java日常的学习和使用中,为了给不同的场景提供不同的用途,IO流拥有一个庞大的方法集合.虽然给使用者提供了极大的便利,但此同时也带来了学习时的异常冗杂 ...
- java io 结构_java 的IO类库的基本架构
java IO 操作的类在java.io 包中,大概可以分为以下几组: 基于字节操作的接口:InputStream 和 OutputStream 基于字符操作的接口:Writer 和 Reader 基 ...
- java写入简介_Java关于IO流的介绍
2.InputStream 和 OutputStream 是两个 abstact 类,对于字节为导向的 stream 都扩展这两个基类; inputStream中的关键方法: read():方法是读取 ...
- java io顺序_Java顺序IO性能
java io顺序 许多应用程序将一系列事件记录到基于文件的存储中,以供以后使用. 从日志记录和审核,直到在事件源设计或其紧密相关的CQRS中保留事务重做日志,这都可以是任何东西. Java具有多种方 ...
- java io处理_java之IO处理
一.Java的 IO 处理 1. input output 输入和输出 2. 输入? --学习对于学生来说 -- 由外面的信息到大脑 -- 由外存到内存 3. 输出? -- 授课对于老师来说 -- 由 ...
- java文本压缩算法_java 什么算法压缩文件最小
展开全部 有三种方式实现java压缩: 1.jdk自带的包java.util.zip.ZipOutputStream,不足之处,文件(夹)名称32313133353236313431303231363 ...
- java读取日志_Java实时监控日志文件并输出的方法详解
前言 最近有一个银行数据漂白系统,要求操作人员在页面调用远端Linux服务器的shell,并将shell输出的信息保存到一个日志文件,前台页面要实时显示日志文件的内容.这个问题难点在于如何判断哪些数据 ...
最新文章
- POJ2104 K-th Number [分块做法]
- navigationController的NavigationBar和ToolBar的POP或PUSH消失问题
- ASP.NET Core 中的那些认证中间件及一些重要知识点
- scrapy不抓取重复的网页解决办法
- thinkphp5每周学习总结 1026
- 4月27 统计学——卡方检验和卡方分布
- Linux知识(4)----文件系统结构
- 主成分分析逆变换_主成分分析方法操作
- 我的职业梦计算机软件,我的职业梦作文1000字
- 基于PaaS人事部门间平台多重身份的技术解决方案
- python的turtle的正六角形简洁画法
- 局域网唤醒计算机,电脑远程开机_局域网唤醒电脑 | 茶杯猫
- SiamCAR: Siamese Fully Convolutional Classification and Regression for Visual Tracking
- 你想要拥有自己的搜索引擎吗?
- 惠普触控板使用指南_Windows10触控板的正确使用方法
- 吴裕雄--天生自然 诗经:寻隐者不遇
- 基于SpringBOOT的订餐系统
- C语言程序设计第4堂作业
- Vista系统安装优化备忘
- cisco english word
热门文章
- ABP .Net Core Entity Framework迁移使用MySql数据库
- 从ThoughtWorks 2017技术雷达看微软技术
- dotnetConf 2016 线上虚拟大会
- elif是不是java关键字_C# 中的#if、#elif、#else、#endif等条件编译符号 (转载)
- 【数据库原理及应用】经典题库附答案(14章全)——第九章:数据库安全性
- 工程测量不用愁,120个视频动画帮你忙,简单易学直观明了!
- Android Studio开发基础之Service
- Android之可以做的两件坏事---破解锁屏密码和获取Wifi密码
- 自定义dialog弹窗html,自定义H5页面dialog弹窗
- char添加一个字符_给你五十行代码把图片变成字符画!程序:太多了,一半都用不完...