import java.time.LocalDateTime;
import java.time.format.DateTimeFormatter;
import java.time.format.DateTimeFormatterBuilder;
import java.util.Locale;

public class Main {
	public static void main(String[] args) {
		final String strDateTime = "24 Oct 2016 7:31 pm";
		DateTimeFormatter dtf = new DateTimeFormatterBuilder()
				.parseCaseInsensitive()				// For case-insensitive (e.g. am, Am, AM) parsing 
				.appendPattern("d MMM uuuu h:m a")  // Pattern conforming to the date-time string
				.toFormatter(Locale.ENGLISH);       // Locale
		LocalDateTime ldt = LocalDateTime.parse(strDateTime, dtf);
		System.out.println(ldt);
	}
}