java - 如何从字符串中检索值?
问题描述
这里 dob 是字符串值。我将如何从 String 中获取特定值。请检查我提到的代码是否需要它。
public class MainActivity extends AppCompatActivity {
private EditText editTextDate;
private Button mButton;
private static final String DATE_FORMAT = "dd/MM/YYYY";
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
initView();
btnClick();
}
private void initView() {
editTextDate = findViewById(R.id.date);
}
private void btnClick() {
mButton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
String dob = editTextDate.getText().toString();
// dob is is a date like 25/05/1995
// I want to 1995 value. What will i do??
}
});
}
}
解决方案
虽然,您可以使用正则表达式拆分字符串,但在这里,这是您需要学习的内容。简单日期格式。这将为您提供更多控制权,尤其是当您花时间使用它时。
- 爪哇
SimpleDateFormat format = new SimpleDateFormat("dd/MM/yyyy", Locale.getDefault());
Date yourDate = format.parse("25/05/1995");
Calendar yourCal = new Calendar.getInstance();
yourCal.setTime(yourDate);
Log.d("Tag","Day : "+ yourCal.get(Calendar.DAY_OF_MONTH));
Log.d("Tag","Month: " + yourCal.get(Calendar.MONTH) + 1);
Log.d("Tag","Year: " + yourCal.get(Calendar.YEAR));
- 科特林
val format = SimpleDateFormat("dd/MM/yyyy", Locale.getDefault())
val yourDate = format.parse("25/05/1995")
val yourCal: Calendar = Calendar.getInstance()
yourCal.time = yourDate!!
Log.d("Tag", "Day : " + yourCal[Calendar.DAY_OF_MONTH])
Log.d("Tag", "Month: " + yourCal.get(Calendar.MONTH) + 1)
Log.d("Tag", "Year: " + yourCal.get(Calendar.YEAR))
请记住,月份从一月份的 0 开始,因此您必须在其中 +1,并且大写的“M”在 java 中表示月份,而小写的“m”表示分钟。SimpleDateFormat 有很多格式,您可以使用其中任何一种。
推荐阅读
- c# - 在 C# 中使用大日期
- java - 包结构的jar执行错误
- reactjs - 从图像标签的 onClick() 恢复数据
- openlayers - 如何使用 WMTS 不正确的地图覆盖修复 EPSG:4326
- python-3.x - 如何使用 python 代码自动下载
- ruby-on-rails - 请求的 icu4c 版本不兼容
- java - 在 Java 解释器中抽象数学运算
- java - 如何检查 FirebaseFirestore 是否已经在 Android 中启动?
- rpt - 运行 nongui hcl onetest 性能
- python - Pandas Groupby - 计算每组总价值的百分比