Properties文件,Data,Calendar类的使用
package cn.hncu.day9;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;
import java.util.Enumeration;
import java.util.Properties;
public class PropertiesDemo {
//注意,a.properties文件应该放在项目根目录,即和src,bin文件夹并列的地方
public static void main(String[] args) {
//掌握Properties,只要会如下几个方法就玩转: Properties(), load(), store(), setProperty(),getProperty()
//1 Properties()
Properties p = new Properties();
//2 load()
try {
InputStream in = new FileInputStream("a.properties");
p.load(in);
} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
//3 getProperty()
System.out.println( p.getProperty("size") );
System.out.println( p.getProperty("times") );
System.out.println( p.getProperty("name") );//property文件中的汉字需要转码,否则会乱码,而MyEclipse中的property文件编辑器自动会帮我们做的
//4 setProperty()
p.setProperty("size", "123");//注意,key和value都是文本
int v = Integer.parseInt(p.getProperty("times"))+123;
p.setProperty("times", ""+v);
//5 store()
try {
OutputStream out = new FileOutputStream("a.properties");
p.store(out, "湖南城院");
} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
System.out.println("-----------------");
//罗列出系统(Java虚拟机)的属性
Properties p2 = System.getProperties();
Enumeration e = p2.propertyNames();
while(e.hasMoreElements()){
String key = (String) e.nextElement();
String value = p2.getProperty(key);
System.out.println(key+"="+value);
}
}
}
-----------------------------------------------------------------
package cn.hncu.day9;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
import java.util.Properties;
import javax.swing.JOptionPane;
public class AppTryTimes {
public static void main(String[] args) {
if( !countTimes() ){
JOptionPane.showMessageDialog(null, "软件试用次数已满,请注册!");
return;
}
System.out.println("程序正常运行....");
}
private static boolean countTimes() {
Properties p = new Properties();
int count = 0;
try {
File file = new File("times.uni");
if(!file.exists()){
file.createNewFile();
}
FileInputStream fin = new FileInputStream("times.uni");
p.load(fin);
String strValue = p.getProperty("count");
if(strValue!=null){
count = Integer.parseInt(strValue);
if(count>=5){
return false;
}
}
count++;
System.out.println("软件已经运行"+count+"次!");
p.setProperty("count", ""+count);
//new FileOutputStream(file)---这一句运行时会把原来的旧文件充掉
p.store(new FileOutputStream(file),"");
} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
return true;
}
}
------------------------------------------------------------------------
package cn.hncu.day9;
import java.text.DateFormat;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;
public class DateDemo {
public static void main(String[] args) {
//demo1();//计算程序耗时
demo2();
}
private static void demo2() {
//日期计算
Date d = new Date();//当前日期时间(对象)
System.out.println(d);
long t = 5*24*60*60*1000 + d.getTime();//5天以后的日期对象的精确值
d.setTime(t);
//格式化: 日期对象-->日期的字符串
//DateFormat df = new SimpleDateFormat("yyyy-MM-dd");
DateFormat df = new SimpleDateFormat("yyyy年MM月dd日 HH:mm:ss SS毫秒");
String str = df.format(d);
System.out.println("str:"+str);
//解析: 日期的字符串-->日期对象
DateFormat df2 = new SimpleDateFormat("MM/dd/yyyy HH:mm:ss");
try {
Date d2 = df2.parse("08/08/2008 08:08:08");
System.out.println(d2);
System.out.println( df.format(d2) );
} catch (ParseException e) {
e.printStackTrace();
}
}
public static void demo1(){
Date d = new Date();//对象,内部存储的精确值:1970 年 1 月 1 日 00:00:00 GMT)以来的指定毫秒数
long t = d.getTime();//获取其中的精确值
for(int i=0;i<1000;i++){
System.out.println(i);
}
Date d2 = new Date();
long t2 = d2.getTime();
System.out.println("本程序的运行时间:"+ (t2-t));
}
}
-------------------------------------------------------------------------------------------------------------
package cn.hncu.day9;
import java.util.Calendar;
import java.util.Date;
public class CalendarDemo {
public static void main(String[] args) {
Calendar c = Calendar.getInstance();
System.out.println( c.get(Calendar.YEAR) );//获取年份
System.out.println( c.get(Calendar.MONTH) +1 );//注意,月份要加1
System.out.println( c.get(Calendar.DAY_OF_MONTH) );//获取日期
//显示星期几
//System.out.println( c.get(Calendar.DAY_OF_WEEK)-1 );//我们的星期一是它的第2天,因为它的第1天是从星期日开始的
System.out.println( getWeekDay(c) );
//日期计算
c.set(Calendar.YEAR, 3000);//给日历中的某个字段直接设置值
System.out.println( getWeekDay(c) );
//System.out.println(new Date().getTime());
c.setTime( new Date(1465215452531L+5*24*60*60*1000) );
System.out.println( c.get(Calendar.DAY_OF_MONTH) );//获取日期
System.out.println( getWeekDay(c) );
Calendar c2 = Calendar.getInstance();
//c2.add(Calendar.DAY_OF_MONTH,100);//100天后的日期(日历)对象
c2.add(Calendar.DAY_OF_MONTH,-100);//100天以前的日期(日历)对象
System.out.println( c2.get(Calendar.MONTH)+1 );
System.out.println( getWeekDay(c2) );
}
/*自己写的一个正确显示星期几的小工具*/
public static String getWeekDay(Calendar c){
String strs[]={"星期日","星期一","星期二","星期三","星期四","星期五","星期六"};
return strs[ c.get(Calendar.DAY_OF_WEEK)-1 ];
}
}
Properties文件,Data,Calendar类的使用的更多相关文章
- properties文件读写工具类
java代码: import java.io.FileInputStream; import java.io.FileOutputStream; import java.io.IOException; ...
- properties文件读取工具类
项目中防止硬编码,经常会将一些与业务相关的数据存在properties文件中,根据不同的key加载不同的数据,所以就会有读取properties文件的东西,这篇文章仅为了以后copy方便写的. 1.添 ...
- Properties文件工具读取类
import java.io.IOException;import java.io.InputStream;import java.util.Properties; public class Comm ...
- properties文件读写工具类PropertiesUtil.java
import java.io.FileInputStream; import java.io.FileOutputStream; import java.io.IOException; import ...
- SpringBoot连接Oracle报错,找不到驱动类,application.properties文件中驱动类路径为红色
pom.xml文件: <!-- oracle odbc --> <dependency> <groupId>com.oracle</groupId> & ...
- 161216、使用spring的DefaultResourceLoader自定义properties文件加载工具类
import java.io.IOException; import java.io.InputStream; import java.util.NoSuchElementException; imp ...
- Properties文件工具类的使用--获取所有的键值、删除键、更新键等操作
有时候我们希望处理properties文件,properties文件是键值对的文件形式,我们可以借助Properties类操作. 工具类如下:(代码中日志采用了slf4j日志) package cn. ...
- 使用spring的DefaultResourceLoader自定义properties文件加载工具类
转自:https://www.cnblogs.com/zrbfree/p/6230957.html import java.io.IOException; import java.io.InputSt ...
- 五种方式让你在java中读取properties文件内容不再是难题
一.背景 最近,在项目开发的过程中,遇到需要在properties文件中定义一些自定义的变量,以供java程序动态的读取,修改变量,不再需要修改代码的问题.就借此机会把Spring+SpringMVC ...
随机推荐
- bzoj 3823: 定情信物 线性筛逆元
3823: 定情信物 Time Limit: 10 Sec Memory Limit: 128 MBSubmit: 108 Solved: 2[Submit][Status] Descriptio ...
- 深入解析java虚拟机-jvm运行机制
转自oschina 一:JVM基础概念 JVM(Java虚拟机)一种用于计算设备的规范,可用不同的方式(软件或硬件)加以实现.编译虚拟机的指令集与编译微处理器的指令集非常类似.Java虚拟机包括一套字 ...
- UITableView.m:8042 crash 崩溃
CRASH : /BuildRoot/Library/Caches/com.apple.xbs/Sources/UIKit_Sim/UIKit-3600.6.21/UITableView.m:804 ...
- 移动应用产品开发-android开发(二)
这段时间实在太忙了,也没什么精力来写博客,还是没养成写博客的习惯,还是得记载下来,不然时间久了就忘记了. 早上一大早就来公司了,趁还早,拟定今天的工作内容和计划后,赶紧记载点东西. 最近做androi ...
- POJ3984 迷宫问题
典型BFS. #include <iostream> #include <memory.h> #include <queue> #include <map&g ...
- [转贴]watin的一些例子
Some WatiN ExamplesBelow are some examples of WatiN codes for testing:// find div by idvar div = bro ...
- OA学习笔记-010-Struts部分源码分析、Intercepter、ModelDriver、OGNL、EL
一.分析 二. 1.OGNL 在访问action前,要经过各种intercepter,其中ParameterFilterInterceptor会把各咱参数放到ValueStack里,从而使OGNL可以 ...
- 17.1 Replication Configuration 复制配置
17.1 Replication Configuration 复制配置 17.1.1 How to Set Up Replication 17.1.2 Replication Formats 17.1 ...
- 转:二十、java的抽象类
http://blog.csdn.net/liujun13579/article/details/7737667 现实世界中,人们表征世界时,会把现实世界中的很多类具有相同特征的事物归为一个抽象类.比 ...
- 深入浅出 - Android系统移植与平台开发(十)- Android编译系统与定制Android平台系统(瘋耔修改篇二)
第四章.Android编译系统与定制Android平台系统 4.1Android编译系统 Android的源码由几十万个文件构成,这些文件之间有的相互依赖,有的又相互独立,它们按功能或类型又被放到不同 ...