前言

有时候我们需要截图,在要截图时,有人用到了时间格式,但是时间格式中的:在文件名称中是不被允许的字符,所以就会报错,如何生成唯一的时间文件名:
示例代码
package com.demo;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.Date;
import java.util.GregorianCalendar;
public class TimeString {
private String valueOfString(String str, int len) {
StringBuffer sb = new StringBuffer();
for (int i = 0; i < len - str.length(); i++) {
sb.append("0");
}
return (sb.length() == 0) ? (str) : (sb.toString() + str);
}
public String getDateFormat(){
SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
return df.format(new Date());
}
public Date getDateFormat(String time){
SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
try {
return df.parse(time);
} catch (ParseException e) {
e.printStackTrace();
}
return null;
}
private String getTimeString(Calendar calendar) {
StringBuffer sb = new StringBuffer();
sb.append(String.valueOf(calendar.get(Calendar.YEAR)))
.append(this.valueOfString(String.valueOf(calendar.get(Calendar.MONTH) + 1),2))
.append(this.valueOfString(String.valueOf(calendar.get(Calendar.DAY_OF_MONTH)),2))
.append(this.valueOfString(String.valueOf(calendar.get(Calendar.HOUR_OF_DAY)),2))
.append(this.valueOfString(String.valueOf(calendar.get(Calendar.MINUTE)),2))
.append(this.valueOfString(String.valueOf(calendar.get(Calendar.SECOND)),2))
.append(this.valueOfString(String.valueOf(calendar.get(Calendar.MILLISECOND)),3));
return sb.toString();
}
public String getTimeString(String time){
Calendar calendar = new GregorianCalendar();
calendar.setTime(this.getDateFormat(time));
return this.getTimeString(calendar);
}
public String getTimeString(){
Calendar calendar = new GregorianCalendar();
return this.getTimeString(calendar);
}
public static void main(String[] args) {
TimeString ts = new TimeString();
System.out.println(ts.getTimeString());
System.out.println(ts.getTimeString("2015-4-30 8:51:52"));
}
}
虽然上面的getTimeString方法精确到了毫秒,但仍会有可能产生相同的文件名,导致覆盖,所以,在生成文件名时判断一下是否存在:
package com.demo;
import java.io.File;
public class Test16 {
public String getFileName(String path){
File file = new File(path);
if(file.exists()){
return this.getFileName(file.getParent()+File.separator+(new TimeString().getTimeString())+".png");
}
return path;
}
public static void main(String[] args) {
Test16 t = new Test16();
System.out.println(t.getFileName("D:/1.txt"));
}
}
理论上来说,这种也是有可能产生相同的文件名的,这种在多线程中是有可能的,解决的办法很简单,自已动脑筋想想想去吧!
总结
以上就是关于JAVA中通过时间格式来生成唯一文件名的全部内容了,希望本文的内容对大家的学习或者工作能带来一定的帮助,如果有疑问大家可以留言交流。
# java
# 生成唯一文件名
# ava
# 生成文件名
# 生成唯一字符串
# java批量修改文件名的实现方法
# java基于Apache FTP实现文件上传、下载、修改文件名、删除
# Java批量修改文件名的实例代码
# Java实现读取文件夹下(包括子目录)所有文件的文件名
# java获取系统路径字体、得到某个目录下的所有文件名、获取当前路径
# java 文件名截取方法
# java字符串切割实例学习(获取文件名)
# 利用Java获取文件名、类名、方法名和行号的方法小结
# JavaWeb利用struts实现文件下载时改变文件名称
# Java获取文件夹下所有文件名称的方法示例
# Java实现简单修改文件名的方法分析
# 就会
# 会有
# 是有
# 有可能
# 很简单
# 想去
# 不被
# 报错
# 理论上
# 但仍
# 多线程
# 是否存在
# 有人用
# 有疑问
# str
# append
# sb
# valueOfString
# length
# StringBuffer
相关文章:
如何获取上海专业网站定制建站电话?
mc皮肤壁纸制作器,苹果平板怎么设置自己想要的壁纸我的世界?
电商网站制作公司有哪些,1688网是什么意思?
已有域名和空间,如何快速搭建网站?
网站制作培训多少钱一个月,网站优化seo培训课程有哪些?
购物网站制作费用多少,开办网上购物网站,需要办理哪些手续?
网站制作公司哪里好做,成都网站制作公司哪家做得比较好,更正规?
威客平台建站流程解析:高效搭建教程与设计优化方案
免费ppt制作网站,有没有值得推荐的免费PPT网站?
如何高效利用亚马逊云主机搭建企业网站?
中山网站推广排名,中山信息港登录入口?
如何在Golang中处理模块冲突_解决依赖版本不兼容问题
网站建设制作、微信公众号,公明人民医院怎么在网上预约?
广州网站设计制作一条龙,广州巨网网络科技有限公司是干什么的?
网站制作公司排行榜,四大门户网站排名?
昆明网站制作哪家好,昆明公租房申请网上登录入口?
淘宝制作网站有哪些,淘宝网官网主页?
建站之星如何实现网站加密操作?
Swift开发中switch语句值绑定模式
专业网站制作服务公司,有哪些网站可以免费发布招聘信息?
建站之星下载版如何获取与安装?
网站制作公司广州有几家,广州尚艺美发学校网站是多少?
想学网站制作怎么学,建立一个网站要花费多少?
建站之星IIS配置教程:代码生成技巧与站点搭建指南
如何生成腾讯云建站专用兑换码?
打鱼网站制作软件,波克捕鱼官方号怎么注册?
官网建站费用明细查询_企业建站套餐价格及收费标准指南
网站建设设计制作营销公司南阳,如何策划设计和建设网站?
已有域名如何快速搭建专属网站?
高端企业智能建站程序:SEO优化与响应式模板定制开发
教育培训网站制作流程,请问edu教育网站的域名怎么申请?
义乌企业网站制作公司,请问义乌比较好的批发小商品的网站是什么?
如何配置FTP站点权限与安全设置?
如何快速搭建高效WAP手机网站吸引移动用户?
微网站制作教程,我微信里的网站怎么才能复制到浏览器里?
猪八戒网站制作视频,开发一个猪八戒网站,大约需要多少?或者自己请程序员,需要什么程序员,多少程序员能完成?
一键网站制作软件,义乌购一件代发流程?
怎么制作网站设计模板图片,有电商商品详情页面的免费模板素材网站推荐吗?
如何做静态网页,sublimetext3.0制作静态网页?
专业企业网站设计制作公司,如何理解商贸企业的统一配送和分销网络建设?
宝华建站服务条款解析:五站合一功能与SEO优化设置指南
如何在云主机快速搭建网站站点?
,购物网站怎么盈利呢?
怎么制作一个起泡网,水泡粪全漏粪育肥舍冬季氨气超过25ppm,可以有哪些措施降低舍内氨气水平?
如何通过NAT技术实现内网高效建站?
如何在景安服务器上快速搭建个人网站?
活动邀请函制作网站有哪些,活动邀请函文案?
免费制作海报的网站,哪位做平面的朋友告诉我用什么软件做海报比较好?ps还是cd还是ai这几个软件我都会些我是做网页的?
如何选择适配移动端的WAP自助建站平台?
高配服务器限时抢购:企业级配置与回收服务一站式优惠方案
*请认真填写需求信息,我们会在24小时内与您取得联系。