Android / Java convert date string to long type

I need to convert a string in the format "dd / mm / yyyy" to a long type. To pass the value of calendarProvider to android.

I currently have:

Calendar calendar = Calendar.getInstance(); long startEndDate = 0; Calendar currentDateInfo = Calendar.getInstance(); currentDateInfo.set(calendar.get(Calendar.YEAR), calendar.SEPTEMBER, calendar.get(Calendar.DAY_OF_MONTH)); startEndDate = currentDateInfo.getTimeInMillis(); 

I need:

 long startDate = *Some sort of conversion* EditText.getText(); 

I tried using SimpleDateFormat, but I am having trouble returning the correct type. Any help is appreciated.

+6
source share
2 answers

You can use the following code to get a long value (milliseconds since January 1, 1970, 00:00:00 GMT) from a String string with the format "dd / mm / yyyy".

 try { String dateString = "30/09/2014"; SimpleDateFormat sdf = new SimpleDateFormat("dd/MM/yyyy"); Date date = sdf.parse(dateString); long startDate = date.getTime(); } catch (ParseException e) { e.printStackTrace(); } 
+18
source

Use this code

 String[] dateArray = dateString.split("-"); int year = Integer.parseInt(dateArray[0]); int month = Integer.parseInt(dateArray[1]); int date = Integer.parseInt(dateArray[2]); GregorianCalendar gc = new GregorianCalendar(year,month,date); long timeStamp = gc.getTimeInMillies(); 
+2
source

Source: https://habr.com/ru/post/976048/


All Articles