Home »
Scala
How to check current Date and time in Scala?
By IncludeHelp Last updated : November 15, 2024
Scala is a general-purpose programming language, which is majorly used for data manipulation. It has libraries and support for almost all different utilities that are important. One of the important things that are required while programming is real-time date and time status and Scala has a solution for that too. This tutorial on check current date and time in Scala walks you through the method to create Scala variables that hold date and time stamps.
Getting current Date and Time in Scala using calendar class
Getting current date and time in Scala is very simple and you can do this using the classical java 'calendar' class.
This class can be imported using the statement: "java.util.Calendar". The calendar class in java is an abstract class that is used to get the current date and time. The same class is used in Scala too, we can get the current date and time using it. There is a field in this class that stores the current date and time.
Program to get time using getInstance() method
import java.util.Calendar;
object MyClass {
def main(args: Array[String]): Unit = {
var dT = Calendar.getInstance()
var currentMinute = dT.get(Calendar.MINUTE)
var currentHour = dT.get(Calendar.HOUR_OF_DAY)
if(currentHour > 12){
currentHour %= 12
println("Current time is "+currentHour+":"+currentMinute+" PM")
}
else{
println("Current time is "+currentHour+":"+currentMinute+" AM")
}
}
}
Output
Current time is 7:50 PM
Code logic
In this program, we have used the getInstance() method of the Calendar class. This method is used to find the date and time in java, the same method is used in Scala also, We have passed the variables calendar.MINUTE and calendar.HOUR_OF_DAY, and stored the result of the methods in variables currentMinute and currentHour respectively. The values returned from the functions are stored in the variables, The method gets (Calendar.HOUR_OF_DAY) returns the current hour in 24-hour format. To convert this into 12-hour format we will use a conditional statement that checks for AM or PM.
Program to get full date and time in Scala using Calendar Class
import java.util.Calendar;
object MyClass {
def main(args: Array[String]): Unit = {
var dT = Calendar.getInstance()
var currentHour = dT.getTime()
println("Current data and time is "+currentHour)
}
}
Output
Current data and time is Tue Jul 16 19:54:59 UTC 2019
Code logic
This code uses the getTime() method that returns the current date and time in the format day MM DD time UTC YYYY. This is also an inbuilt method of the class calendar.
Getting Exact Date and Time based on UTC
You can also get the exact date and time of your current time based on UTC. Some methods help you get year, day, minute, the second also. You can get all this using the get() method of the Calendar class. Passing different parameters can get you different results. These are,
- get(object.YEAR)
- get(object.DATE)
- get(object.MINUTE)
- get(object.SECOND)
Program to find year, date, minute and second using get() method
import java.util.Calendar;
object MyClass {
def main(args: Array[String]): Unit = {
var dT = Calendar.getInstance();
println("Current Calendar's Year: " + dT.get(Calendar.YEAR));
println("Current Calendar's Day: " + dT.get(Calendar.DATE));
println("Current MINUTE: " + dT.get(Calendar.MINUTE));
println("Current SECOND: " + dT.get(Calendar.SECOND));
}
}
Output
Current Calendar's Year: 2019
Current Calendar's Day: 16
Current MINUTE: 0
Current SECOND: 5
Get Date using java.time.localDate.Now
This java method is available in Scala, you can get the current date using this method.
Program to get DATE in Scala
import java.util.Calendar;
object MyClass {
def main(args: Array[String]): Unit = {
println(java.time.LocalDate.now)
}
}
Output
2019-07-16
Get Date using SimpleDateFormat class
This java class is also used in Scala to get current date. This class is used in Scala to get a date. This method is used with the scala calendar class to format the date into a specific form of our choice.
This class can be used by using the import statement: java.text.SimpleDateFormat. This imports these Java classes in Scala
Program to get date using simpleDateFormat
import java.util.Calendar;
import java.text.SimpleDateFormat;
object MyClass {
def main(args: Array[String]): Unit = {
val form = new SimpleDateFormat("dd / MM / yy");
val c = Calendar.getInstance();
println("Present Date : " + c.getTime());
val formattedDate = form.format(c.getTime());
println("Date formatted : "+formattedDate);
}
}
Output
Present Date : Tue Jul 16 20:07:22 UTC 2019
Date formatted : 16 / 07 / 19
Get Time using SimpleDateFormat class
You can get the current time using the hour formatting over the calendar method variable.
- "HH" for getting hour in 24 hour format
- "hh" for getting hour in 12 hour format
- "MM/mm" for getting Minutes
- "ss" for getting seconds
- "a" for getting am or pm
Program to get current time using SimpleDateFormat class
import java.util.Calendar;
import java.text.SimpleDateFormat;
object MyClass {
def main(args: Array[String]): Unit = {
val c = Calendar.getInstance();
val hr24 = new SimpleDateFormat("HH");
val formhr24 = hr24.format(c.getTime());
val hr12 = new SimpleDateFormat("hh");
val formhr12 = hr12.format(c.getTime());
val min = new SimpleDateFormat("mm");
val formmin = min.format(c.getTime());
val sec = new SimpleDateFormat("ss");
val formsec = sec.format(c.getTime());
val a_p = new SimpleDateFormat("a");
val forma_p = a_p.format(c.getTime());
println("Time in 24 hour format "+formhr24+" : "+formmin+" : "+formsec)
println("Time in 24 hour format "+formhr12+" : "+formmin+" : "+formsec+" "+forma_p)
}
}
Output
Time in 24 hour format 20 : 12 : 18
Time in 24 hour format 08 : 12 : 18 PM
The Java functions calendar() and SimpleDateFormat() are valid in Scala also. As in the above programs - you can see that the methods of these classes that are imported from Java are so powerful that they can manipulate all the date endtime functionalities that are inbuilt in the compiler. You can check ok dates in any format. Using this you can also see which calendar the compiler is using and the time that is being used by the compiler. Generally, the compiler uses UTC and Georgian calendar.