java 有字符串2014-9-10 11:20如何分别取得月,日,时,分

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了java 有字符串2014-9-10 11:20如何分别取得月,日,时,分相关的知识,希望对你有一定的参考价值。

如题,有yyyy-MM-dd HH:mm类型的字符串,如何分别取得他的年,月,日,时,分;例如2013-07-21 12:13,要获得2013 、07、21、12、13;

第一种解决办法:

public static void main(String[] args) 
String str = "2013-07-21 12:13";
str = str.replaceAll(" ", "-").replaceAll(":", "-");
String strs[] = str.split("-");
for (int i = 0; i < strs.length; i++) 
System.out.println(strs[i]);



刚想写另外一种,被楼上兄台写了。。。

参考技术A Calendar c = Calendar.getInstance();//可以对每个时间域单独修改

int year = c.get(Calendar.YEAR);
int month = c.get(Calendar.MONTH);
int date = c.get(Calendar.DATE);
int hour = c.get(Calendar.HOUR_OF_DAY);
int minute = c.get(Calendar.MINUTE);
int second = c.get(Calendar.SECOND);
System.out.println(year + "/" + month + "/" + date + " " +hour + ":" +minute + ":" + second);

//这个就是java获取当前系统时间本回答被提问者采纳
参考技术B 先按空格用split切成字符数组,数组[0]按‘-’用split切成长度为3的字符数组,里面的值就是年月日了;数组[1]按‘:’用split切成长度为2的数组,里面的值就为时和分 参考技术C String dateStr = "2013-07-21 12:13";
SimpleDateFormat myFmt=new SimpleDateFormat("yyyy-MM-dd HH:mm");
Date date = myFmt.parse(dateStr);

还有比这更简单的吗?
参考技术D java有一个类叫做simpleDateFormat 用于将字符串和时间相互转换,通过正则表达式规定哪些是年、月、日、时、分、秒

如何用java生成有规律的字符串?

用java生成有规律的字符串

1、生成6位的字符串,范围:26个字母a~z和10个数字0~9。
2、其中前三位是小写字母,后三位是数字。
3、前三位字符字母不能出现重码,如:aaa或aa等字样。
4、后三位数字,要生成:012或234连号形式。
5、最后生成的字符串会是如:whk012,asd123等形式。
6、请高手帮忙。

如果可能的话,生成txt文件,且每个文件不大于100K。
我是初级学习者,麻烦有心人帮忙写一下.谢谢.或写个大概都行.

import java.io.*;
public class Test
static long k=0;
static char[] c=new char[3];
static boolean[] b=new boolean[26];
static void create(char[] word,String[] num,BufferedWriter bw,int i)throws Exception
if(i==3)
for(int k=0;k<num.length;k++)
bw.write(""+c[0]+c[1]+c[2]+num[k]+" ");
bw.write("\r\n");
return;

for(int j=0;j<word.length;j++)
if(b[j]==true)
continue;
b[j]=true;
c[i]=word[j];
create(word,num,bw,i+1);
b[j]=false;


public static void main(String[] args)throws Exception
BufferedWriter bw=new BufferedWriter(new FileWriter("String.txt"));
char[] word=new char[26];
for(int i=0;i<26;i++)
word[i]=(char)(i+97);
String[] num="012","123","234","345","456","567","678","789";
create(word,num,bw,0);
bw.close();

参考技术A 调用随机函数生成随即数 参考技术B 调用Random.nextInt(int n)生成随机数,
之后用ASCII转换为字符,注意小写字母的 ASCII的范围,
因为不能重复,所以生成下一个字母时要判断一下,
然后,数字好解决,只生成第一个,后面两个依次加一就好了,

嗯,就说这么多了,你琢磨琢磨
参考技术C 呵呵
如果对ASCII码不了解,可是建立枚举类型每个字符对应一个字数,
当然用字符串截取的形式也很好如:123456789abcdefghijklmn...
int i=Random.nextInt(62)//数字和大小写字母共62个(它生成0到62不包括62的随机数)
用CharAt(i)来获取。

以上是关于java 有字符串2014-9-10 11:20如何分别取得月,日,时,分的主要内容,如果未能解决你的问题,请参考以下文章

用Java编写一个程序,要求如下:

JAVA 如何用部分空格分割字符串,急!

毕向东_Java基础视频教程第20天_IO流(11~14)

oracle 怎样把systimestamp 转换成date? 如:2012-11-11 17:20:39

Java字符串中数据号码的分离问题

11月头条:Python势不可挡,超越 Java!