Java 如何在Android中限制字符串
在我的应用程序中,我想在Java 如何在Android中限制字符串,java,android,string,Java,Android,String,在我的应用程序中,我想在TextView中显示一些文本(日期) 我从服务器获取此文本,并希望在文本视图中显示此文本。 我从服务器获取以下文本: 2017年12月16日 但我想展示如下: 2017年 如何删除12月16日的 java字符串中的split()方法有两个签名 公共字符串拆分(字符串正则表达式) 和, 公共字符串拆分(字符串正则表达式,整数限制) 在Java中使用拆分字符串是指使用.split(“”,它根据提供的模式拆分字符串,返回字符串数组 示例代码 String date="
TextView
中显示一些文本(日期)我从服务器获取此文本,并希望在文本视图中显示此文本。
我从服务器获取以下文本: 2017年12月16日 但我想展示如下: 2017年 如何删除12月16日的
java字符串中的split()方法有两个签名
公共字符串拆分(字符串正则表达式)
和,
公共字符串拆分(字符串正则表达式,整数限制)
在Java中使用拆分字符串是指使用.split(“”
,它根据提供的模式拆分字符串
,返回字符串数组
示例代码
String date="16 Dec 2017";
String [] dateParts = date.split(" ");
String day = dateParts[0];
String month = dateParts[1];
String year = dateParts[2];
试试这个使用
java字符串中的split()方法有两个签名
公共字符串拆分(字符串正则表达式)
和,
公共字符串拆分(字符串正则表达式,整数限制)
在Java中使用拆分字符串是指使用.split(“”
,它根据提供的模式拆分字符串
,返回字符串数组
示例代码
String date="16 Dec 2017";
String [] dateParts = date.split(" ");
String day = dateParts[0];
String month = dateParts[1];
String year = dateParts[2];
您可以使用“”分隔字符串,即空格,尝试使用“”拆分字符串,如下所示:-
String date = "16 Dec 2017";
String[] date = date.split(" ");
//for only 2017 you can use date[2]
您可以使用“”分隔字符串,即空格,尝试使用“”拆分字符串,如下所示:-
String date = "16 Dec 2017";
String[] date = date.split(" ");
//for only 2017 you can use date[2]
请注意,有几种更优雅和正确的方法可以做到这一点,通常你使用一个日期对象,只是改变它的外观
但根据你的愿望,我的回答是:
我不会拆分,因为创建一个数组只获取其中一个元素是一种浪费
您可以使用substring方法
String xdate = "16 Dec 2017";
System.out.println(xdate.substring(xdate.length() - 4, xdate.length()));
请注意,有几种更优雅和正确的方法可以做到这一点,通常你使用一个日期对象,只是改变它的外观
但根据你的愿望,我的回答是:
我不会拆分,因为创建一个数组只获取其中一个元素是一种浪费
您可以使用substring方法
String xdate = "16 Dec 2017";
System.out.println(xdate.substring(xdate.length() - 4, xdate.length()));
在java 8中,您可以这样做:
Date date = new Date(); //Create a Date object with date provided from TextBox
LocalDate localDate = date.toInstant().atZone(ZoneId.systemDefault()).toLocalDate();
int year = localDate.getYear();
int month = localDate.getMonthValue();
int day = localDate.getDayOfMonth();
因为您只需要年份int year=localDate.getYear()代码>将为您提供一年 在java 8中,您可以这样做:
Date date = new Date(); //Create a Date object with date provided from TextBox
LocalDate localDate = date.toInstant().atZone(ZoneId.systemDefault()).toLocalDate();
int year = localDate.getYear();
int month = localDate.getMonthValue();
int day = localDate.getDayOfMonth();
因为您只需要年份int year=localDate.getYear()代码>将为您提供一年 如果您想要只包含年份的日期子字符串,即最后4个数字,请尝试下面的代码
String date="16 Dec 2017";
int a = date.length();
String d = date.substring(a-4,a);
如果您想要只包含年份的日期子字符串,即最后4个数字,请尝试下面的代码
String date="16 Dec 2017";
int a = date.length();
String d = date.substring(a-4,a);
试试这个
public static String getYyyy(String date) {
String time = date;
try {
SimpleDateFormat format = new SimpleDateFormat("dd MMM yyyy");
Date date1 = format.parse(date);
if (date1 != null) {
time = new SimpleDateFormat("yyyy").format(date1);
}
} catch (ParseException e) {
e.printStackTrace();
}
return time;
}
试试这个
public static String getYyyy(String date) {
String time = date;
try {
SimpleDateFormat format = new SimpleDateFormat("dd MMM yyyy");
Date date1 = format.parse(date);
if (date1 != null) {
time = new SimpleDateFormat("yyyy").format(date1);
}
} catch (ParseException e) {
e.printStackTrace();
}
return time;
}
如果有日期和时间或更多日期数据,也可以尝试此操作,而不是拆分
String requested_date = "16 Dec 2017";
SimpleDateFormat simpleDateFormat = new SimpleDateFormat("dd MMM yyyy");
Date dateObj = simpleDateFormat.parse(requested_date,new ParsePosition(0));
dateObj.getYear();
如果有日期和时间或更多日期数据,也可以尝试此操作,而不是拆分
String requested_date = "16 Dec 2017";
SimpleDateFormat simpleDateFormat = new SimpleDateFormat("dd MMM yyyy");
Date dateObj = simpleDateFormat.parse(requested_date,new ParsePosition(0));
dateObj.getYear();