`

java生成某个范围内的随机时间yyyyMMdd

 
阅读更多
import java.text.SimpleDateFormat;
import java.util.Date;

public class MakeTxt {

	// 返回20150101到20151231的一个随机日期
	public static void main(String[] args) {
		String randomDate = randomDate("20150101", "20151231");
		System.out.println(randomDate);
	}

	/**
	 * 获取随机日期
	 * 
	 * @param beginDate
	 *            起始日期,格式为:yyyyMMdd
	 * @param endDate
	 *            结束日期,格式为:yyyyMMdd
	 * @return
	 */

	private static String randomDate(String beginDate, String endDate) {
		try {
			SimpleDateFormat format = new SimpleDateFormat("yyyyMMdd");
			Date start = format.parse(beginDate);// 构造开始日期
			Date end = format.parse(endDate);// 构造结束日期
			// getTime()表示返回自 1970 年 1 月 1 日 00:00:00 GMT 以来此 Date 对象表示的毫秒数。
			if (start.getTime() >= end.getTime()) {
				return null;
			}
			long date = random(start.getTime(), end.getTime()) ;
			return format.format(new Date(date)) ;
		} catch (Exception e) {
			e.printStackTrace();
		}
		return null;
	}

	private static long random(long begin, long end) {
		long rtn = begin + (long) (Math.random() * (end - begin));
		// 如果返回的是开始时间和结束时间,则递归调用本函数查找随机值
		if (rtn == begin || rtn == end) {
			return random(begin, end);
		}
		return rtn;
	}

}
分享到:
评论

相关推荐

    JAVA生成订单号(日期+流水号)

    通过调整日期格式和随机数的生成范围,可以灵活适应各种业务场景的需求。此外,通过使用Java内置的日期处理类`Date`和格式化工具`SimpleDateFormat`,可以方便地获取并格式化当前时间,进一步提高了代码的实用性。 ...

    java生成流水-格式202001270001

    在Java编程中,生成流水号是一项常见的需求,特别是在金融、电商等系统中,流水号作为交易的唯一标识,对于数据的追踪和管理至关重要。在这个场景中,“java生成流水-格式202001270001”指的是一个Java程序,用于...

    js时间比较(yyyymmdd)

    本文将深入探讨JavaScript中的时间比较,特别是针对"yyyymmdd"格式的日期字符串进行比较的方法。 首先,"yyyymmdd"是一种常用的日期表示方式,其中"yyyy"代表四位数的年份,"mm"代表两位数的月份,"dd"代表两位数的...

    java将数字转换为时间格式

    ### Java将数字转换为时间格式的方法 在Java编程语言中,经常需要处理日期与时间相关的数据,例如将数字(通常是表示时间戳或特定格式的字符串)转换为更易读的时间格式。这种转换不仅可以帮助我们更好地理解和操作...

    java 时间转换类

    java 开发中,各种时间类的转换,比如时间类型转换成String 类型,String类型转换成时间。

    Java 获取日期时间代码

    ### Java 获取日期时间详解 #### 一、概述 在Java编程中,处理日期与时间是一项常见且重要的任务。本文将详细介绍几种常用的Java日期时间获取方法,包括如何获取完整日期时间、仅获取时间部分(时分秒)、获取日期...

    java 时间转换工具

    1.支持java.sql.Date 与 java.util.Date互转 2.支持java.util.Calendar,java.util.Date,java.sql.Date格式化输出 3.支持字符串转java.util.Date 支持字符串格式: yyyyMMdd yyyyMMddHH yyyyMMddHHmm ...

    C#根据时间产生ID编号

    在给定的代码示例中,展示了如何在C#中利用当前时间来生成一个带有随机后缀的ID编号。 #### 代码分析 ```csharp private string Get_BillMain_Id() { Random ra = new Random(); string id = string.Format("{0:...

    java自动生成编号的实现(格式:yyMM+四位流水号)

    java自动生成编号的实现(格式:yyMM+四位流水号) java自动生成编号的实现是指通过java语言生成一个唯一的编号,格式为yyMM+四位流水号。在实际应用中,自动生成编号可以应用于各种场景,如订单编号、用户编号、物流...

    Java时间转换

    在Java中,如果日期和时间格式中包含字母y,例如"yyyyMMdd",那么字母y不能大写,否则将导致日期和时间转换失败。 Java时间转换的应用非常广泛,例如在Web应用程序中,需要将日期和时间转换为字符串,以便在Web...

    JavaScript生成指定范围的时间列表

    遇到一个场景,需要拿到指定时间范围内的每一天,满足格式”YYYYMMDD”,简单的功能,简单的思路 准备  date对象有很多的方法,用到了以下:  new date ()生成date对象,可以直接指定年月日等,new date(year,month...

    DateUtil.java 时间日期处理工具类

    包含"yyyy-MM-dd"、"yyyy-MM-dd HH:mm:ss"、"yyyyMMdd"、"yyyyMMddHHmmss"、"yyyy-MM"、"yyyyMM"等时间格式的转换。 其中: 1.String转Timestamp stringToTimestamp(String dateStr); 2.比较传入时间与当前时间前一...

    jeDate-YYYYMMDD形式.rar

    描述中提到,你需要将压缩包内的CSS和JS文件引入到前端项目中,执行这些代码后,当用户在页面上点击日期框时,会弹出一个符合“YYYYMMDD”格式的日期选择器。这通常涉及到JavaScript库的使用,尤其是jQuery,因为...

    java代码验证日期格式正则表达式(包含闰年验证)带注释

    * "yyyyMM","yyyyMMdd","yyyyMMdd HH:mm:ss", * "yyyy-MM","yyyy-MM-dd","yyyy-MM-dd HH:mm:ss" * "yyyy.MM","yyyy.MM.dd","yyyy.MM.dd HH:mm:ss" * "yyyy/MM","yyyy/MM/dd","yyyy/MM/dd HH:mm:ss" * "yyyy_MM...

    根据当天日期自动生成单据号

    在IT行业中,尤其是在Java编程领域,自动生成单据号是一个常见的需求,特别是在财务系统、订单管理系统或者任何需要唯一标识业务实体的地方。这个需求通常涉及到日期处理、字符串格式化以及可能的序列号生成。下面...

    java生成申请单序列号的实现方法

    在Java编程中,生成申请单序列号是一项常见的需求,它通常要求序列号具有一定的规则,如包含日期信息和连续的序列。在这个问题中,我们看到一个实现此类功能的示例代码,该代码利用了锁机制来确保序列号的正确生成。...

    java和js时间取值问题

    ### Java与JavaScript时间取值详解 #### 一、Java时间取值 在Java中处理日期和时间是一项常见的任务,尤其对于开发需要与用户交互的应用程序来说尤为重要。Java提供了多种类来帮助开发者处理日期和时间相关的操作...

    e语言-将指定的时间转换成需要的格式

    4. 错误处理:在处理过程中,需要捕获可能出现的错误,例如,如果用户提供的格式参数超出了预期的范围,或者时间数据本身有问题,都应有相应的错误处理机制。 5. 返回结果:最后,将转换后的日期字符串返回给调用者...

    一个long型与Date型时间转换工具

    测试人员可能需要生成特定的日期和时间来模拟各种场景,例如检查某个功能在特定日期是否正常工作。使用TimeUtil,他们可以方便地创建Long对象,然后快速转换为Date对象,反之亦然,而无需关心底层的实现细节。 此外...

Global site tag (gtag.js) - Google Analytics