- 浏览: 216437 次
- 性别:
- 来自: 上海
文章分类
最新评论
-
junzi2013:
df
黑马程序员:MyEclipse9 常用快捷键 中英文对照 及 快速get set方法 -
junzi2013:
dfsdafadsfsd
黑马程序员:MyEclipse9 常用快捷键 中英文对照 及 快速get set方法 -
idealab:
博主说的OpenCSV, JavaCSV, SuperCSV都 ...
csv调研 -
tanxin:
楼主怎么解决这个问题的呢?
坑爹的zookeer -
yy22258867:
:twisted:
黑马程序员19-7:foreach遍历核心源码,遍历HashMap需要用map.keySet()或map.entrySet()
FileReader,BufferedReader 模拟load方法,FileInputStream ,注册机
package cn.itcast.io.p2.properties; import java.io.BufferedReader; import java.io.File; import java.io.FileInputStream; import java.io.FileOutputStream; import java.io.FileReader; import java.io.FileWriter; import java.io.IOException; import java.util.Properties; import java.util.Set; public class PropertiesDemo { /** * @param args * @throws IOException */ public static void main(String[] args) throws IOException { /* * Map * |--Hashtable * |--Properties: * * Properties集合: * 特点: * 1,该集合中的键和值都是字符串类型。 * 2,集合中的数据可以保存到流中,或者从流获取。 * * 通常该集合用于操作以键值对形式存在的配置文件。 * * */ // methodDemo_4(); myLoad(); test(); } //对已有的配置文件中的信息进行修改。 /* * 读取这个文件。 * 并将这个文件中的键值数据存储到集合中。 * 在通过集合对数据进行修改。 * 在通过流将修改后的数据存储到文件中。 */ public static void test() throws IOException{ //读取这个文件。 File file = new File("info.txt"); if(!file.exists()){ file.createNewFile(); } FileReader fr = new FileReader(file); //创建集合存储配置信息。 Properties prop = new Properties(); //将流中信息存储到集合中。 prop.load(fr); prop.setProperty("wangwu", "16"); FileWriter fw = new FileWriter(file); //配置文件存储方式 prop.store(fw,""); // prop.list(System.out); fw.close(); fr.close(); } //模拟一下load方法。 public static void myLoad() throws IOException{ Properties prop = new Properties(); BufferedReader bufr = new BufferedReader(new FileReader("info.txt")); String line = null; while((line=bufr.readLine())!=null){ if(line.startsWith("#")) continue; String[] arr = line.split("="); //用i遍历就可以 // System.out.println(arr[0]+"::"+arr[1]); prop.setProperty(arr[0], arr[1]); } prop.list(System.out); bufr.close(); } //读取配置文件的方法 public static void methodDemo_4() throws IOException { Properties prop = new Properties(); //集合中的数据来自于一个文件。 //注意;必须要保证该文件中的数据是键值对。 //需要使用到读取流。文件输入流 FileInputStream fis = new FileInputStream("info.txt"); //使用load方法。 prop.load(fis); prop.list(System.out); } //添加/修改配置文件的内容 public static void methodDemo_3() throws IOException { Properties prop = new Properties(); //存储元素。 prop.setProperty("zhangsan","30"); prop.setProperty("lisi","31"); prop.setProperty("wangwu","36"); prop.setProperty("zhaoliu","20"); //想要将这些集合中的字符串键值信息持久化存储到文件中。 //需要关联输出流。文件输出流 FileOutputStream fos = new FileOutputStream("info.txt"); //将集合中数据存储到文件中,使用store方法。 prop.store(fos, "info"); fos.close(); } /** * 演示Properties集合和流对象相结合的功能。 */ //列出配置文件到控制台 public static void methodDemo_2(){ Properties prop = new Properties(); //存储元素。 // prop.setProperty("zhangsan","30"); // prop.setProperty("lisi","31"); // prop.setProperty("wangwu","36"); // prop.setProperty("zhaoliu","20"); prop = System.getProperties(); prop.list(System.out); } /* * Properties集合的存和取。 */ //取出配置文件的信息 public static void propertiesDemo(){ //创建一个Properties集合。 Properties prop = new Properties(); //存储元素。 prop.setProperty("zhangsan","30"); prop.setProperty("lisi","31"); prop.setProperty("wangwu","36"); prop.setProperty("zhaoliu","20"); //修改元素。 prop.setProperty("wangwu","26"); //取出所有元素。 Set<String> names = prop.stringPropertyNames(); for(String name : names){ String value = prop.getProperty(name); System.out.println(name+":"+value); } } }
package cn.itcast.io.p2.properties; import java.io.File; import java.io.FileInputStream; import java.io.FileOutputStream; import java.io.IOException; import java.util.Properties; /* * 定义功能,获取一个应用程序运行的次数,如果超过5次,给出使用次数已到请注册的提示。并不要在运行程序。 * * 思路: * 1,应该有计数器。 * 每次程序启动都需要计数一次,并且是在原有的次数上进行计数。 * 2,计数器就是一个变量。 突然冒出一想法,程序启动时候进行计数,计数器必须存在于内存并进行运算。 * 可是程序一结束,计数器消失了。那么再次启动该程序,计数器又重新被初始化了。 * 而我们需要多次启动同一个应用程序,使用的是同一个计数器。 * 这就需要计数器的生命周期变长,从内存存储到硬盘文件中。 * * 3,如何使用这个计数器呢? * 首先,程序启动时,应该先读取这个用于记录计数器信息的配置文件。 * 获取上一次计数器次数。 并进行试用次数的判断。 * 其次,对该次数进行自增,并自增后的次数重新存储到配置文件中。 * * * 4,文件中的信息该如何进行存储并体现。 * 直接存储次数值可以,但是不明确该数据的含义。 所以起名字就变得很重要。 * 这就有了名字和值的对应,所以可以使用键值对。 * 可是映射关系map集合搞定,又需要读取硬盘上的数据,所以map+io = Properties. * * * */ public class PropertiesTest { /** * @param args * @throws IOException * @throws Exception */ public static void main(String[] args) throws IOException { getAppCount(); } public static void getAppCount() throws IOException{ //将配置文件封装成File对象。 File confile = new File("count.properties"); //用对象判断,如果不存在就创建文件 if(!confile.exists()){ confile.createNewFile(); } //用文件字节输入流操作 FileInputStream fis = new FileInputStream(confile); Properties prop = new Properties(); prop.load(fis); //从集合中通过键获取次数。 String value = prop.getProperty("time"); //定义计数器。记录获取到的次数。 int count =0; if(value!=null){ count = Integer.parseInt(value); if(count>=5){ // System.out.println("使用次数已到,请注册,给钱!"); // return; throw new RuntimeException("使用次数已到,请注册,给钱!"); } } count++; //将改变后的次数重新存储到集合中。 prop.setProperty("time", count+""); FileOutputStream fos = new FileOutputStream(confile); prop.store(fos, ""); fos.close(); fis.close(); } }
详细请查看:http://edu.csdn.net/heima -------
发表评论
-
Java中的IO整理完整版
2013-02-15 17:23 667http://developer.51cto.com/art/ ... -
Myeclipse中导入zip文件查看源代码
2012-09-21 23:35 1005用Myeclipse的时候,出现无法查看源码的话,导入jdk文 ... -
==与equals
2012-09-13 20:15 600一般基本数据类型的比较用 == 当涉及到对象、字符串的时候,就 ... -
多线程课程002:线程范围内的共享变量
2012-09-13 16:47 911package cn.itcast.heima2; ... -
多线程课程001:线程安全的问题
2012-09-13 14:37 775下面的做法,会发现输出结果被打断了。 package co ... -
多线程课程001:线程安全的问题
2012-09-13 11:14 757package com.lee.thread; pu ... -
内部类的实际应用
2012-09-13 11:01 627public class TraditionalThreadS ... -
Java接口
2012-09-11 12:07 727Java接口的方法只能是抽象的和公开的,Java接口不能有构造 ... -
移位运算符
2012-09-11 09:31 810移位运算符 <<左移 a<<b,a转 ... -
【总结】gridbaglayout布局管理器
2012-08-15 11:19 665http://blog.sina.com.cn/s/blog_ ... -
【练习_00010】java不重复随机数
2012-08-14 01:26 658package com.heima.test; impo ... -
【练习】判断一个字符串中某些字段出现的次数
2012-08-14 01:08 936package com.heima.test; im ... -
选择、冒泡、折半排序查找方法
2012-08-13 15:06 1178import java.util.Arrays; i ... -
自己写的杨辉三角
2012-08-12 16:41 770package com.lee.graphic; p ... -
交换两个数的位置,不用中间变量
2012-08-06 02:28 1081a ^= b; b ^= a; a ^= b; 1 ... -
未解问题,定时器无法自定义切换时间
2012-07-30 18:08 980package com.heima.test004.enu ... -
黑马程序员:设计模式,享元模式flyweight
2012-07-23 02:13 0如果有很多很小的东西,对象,当他们有很多属性是相同的,就可以把 ... -
黑马程序员:for综合图形整合结晶
2012-07-23 01:16 777package Graph; public clas ... -
JS: js获取字符串长度
2012-07-20 18:01 0<SCRIPT LANGUAGE="Jav ... -
传智27-2: 模拟Tocat浏览器,写网页蜘蛛爬虫,抓取网页信息
2012-07-12 17:03 0package cn.itcast.net.p2.ie_s ...
相关推荐
actividad-3-tdd-y-filereader报告越界
大文件上传项目地址界面截图:大文件分片整体流程计算文件摘要id文件切片并上传断点续传上传进度与暂停分片上传完成-后端进行分片合并流程图前端内容计算文件摘要id使用spark-md5 计算文件idconst spark = new ...
比较从文件读取整数的不同方法的基准: Scanner(File source)基于FileReader构造的扫描仪 Scanner使用构造Scanner(Readable source)的构造,其中Readable是FileReader Scanner使用构造Scanner(Readable source)的...
文件阅读器流 给定一个HTML5 File对象(例如从HTML5拖放),将其转换为可读流。 安装 与npm和 $ npm install filereader-stream 例子 var drop = require ( 'drag-and-drop-files' ) var concat = require ( '...
喜欢或不喜欢玩得开心 去做 Upload Page ---------------- FileReader indicator FileReader order ensure Image Detail Popup? Remove Exist Image Upload Indicator 截图
对CSV文件的读写,泛用性比较适合
兼容模块,用于使用和browserify在浏览器中读取文件。 npm install random-access-file-reader 用法 var raf = require ( 'random-access-file-readers' ) var drop = require ( 'drag-and-drop-files' ) drop ( ...
文件上传进度,取消/中止。 文件拖放(仅限 html5)。 从剪贴板粘贴图像并从浏览器页面拖放(仅限 html5)。 图像调整大小和中心裁剪(本机)和用户通过 ngImgCrop 控制裁剪。 请参阅裁剪示例(仅限 html5)。 具有 ...
type="file"] 元素已更改)返回一个 File 对象数组$.fileReader() 返回一个 jQuery 对象(一个 FileReader 实例的包装器) 创建后,此实例公开: 特性: $fileReader.file:对正在读取的 File 实例的引用。 方法: $
读块nodejs 模块使用给定的分隔符逐块读取大文件,非常快 npm install readblock##用法 var readblock = require('../index');var file = readblock.open('test.fasta');file.read("\n>", function(fasta) { ...
DOCKER上的MIRTH CONNECT实例 Authors: Marly Cormar, Surya Prasanna, Dileep Rajput. 先决条件 最新的 。 目前的例子 ...hl7FileReader_to_dbWriter :读取包含hl7消息的文件,并相应地更新mysql d
turbo_csv2是用于解析CSV文件的高效轻量级提取解析器。 解析器仅支持读取令牌并维护内部状态。 它不提供任何类型的记录缓存 特征 完全符合标准 支持自定义方言以读取不同的csv文件变体 支持自定义FileReaders...
FileReader共有4种读取方法: 1.readAsArrayBuffer(file):将文件读取为ArrayBuffer。 2.readAsBinaryString(file):将文件读取为二进制字符串 3.readAsDataURL(file):将文件读取为Data URL 4.readAsText(file...
必须在phtml文件中自己实现目录产品和类别简短描述和详细描述字段的呈现。 集成 :拆分全屏编辑,实时预览,自动草稿保存和离线支持。 [1] 拖放文本区域中支持的图像的“拖放”,“复制”粘贴和经典文件上传。 ...
它将文件读取操作分担给以便即使在读取非常大的文件时也不会阻止浏览器UI呈现。 而且,您可以使用类似承诺的方法轻松地跟踪阅读进度。 内容 getLines(开始,计数[,解码]) getSporadicLines(sporadicLinesMap ...
从1.x到2.x的主要更改Socket.io-file 1.x使用二进制字符串发送文件。 Binary String比直接Binary写慢一点,服务器也使用fs.write,而不是可写流。 最近,不建议使用FileReader.readAsBinaryString(),因此我更新了...
敲除文件一个简单的剔除绑定2.3+,允许您使用HTML5 FileReader功能将文件加载到浏览器中。 现在有了模块加载器和拖放支持...哇!正在安装将基因敲除2.3.js添加到您的项目中,然后将基因敲除.files.js添加到您的项目...
使用文件阅读器 api 预览图像一个简单的演示,展示如何在上传前预览图像。
QuickSort-文件阅读器 该存储库将包含对文本文件使用 QuickSort 方法的源代码。
上传部分用了fileReader模块,读文件用fs模块,默认每次从数据库查询40张图片的信息,从对应相册顺序查询,如果不足40张则从头循环补齐,并把下一次ajax异步加载图片的index值返回给前端,数据格式[index,obj1,obj2,...