Как мне создать временную метку java.sql по своему вкусу? (для строки, для отображения)
Как отформатировать временную метку java.sql для отображения?
Ответ 1
java.sql.Timestamp
extends java.util.Date
. Вам нужно что-то вроде:
String S = new SimpleDateFormat("MM/dd/yyyy").format(myTimestamp);
Чтобы включить время:
String S = new SimpleDateFormat("MM/dd/yyyy HH:mm:ss").format(myTimestamp);
Ответ 2
Используйте String.format(или java.util.Formatter):
Timestamp timestamp = ...
String.format("%1$TD %1$TT", timestamp)
EDIT:
см. документацию Formatter, чтобы узнать, что означает TD и TT: нажмите java.util.Formatter
Первый "T" означает:
't', 'T' date/time Prefix for date and time conversion characters.
и символ, следующий за "T":
'T' Time formatted for the 24-hour clock as "%tH:%tM:%tS".
'D' Date formatted as "%tm/%td/%ty".
Ответ 3
В этом конкретном вопросе стандартное предложение java.text.SimpleDateFormat
работает, но имеет неприятный побочный эффект: SimpleDateFormat
не является потоковым, безопасно и может быть источником особенно неприятных проблем, так как это повредит ваш вывод в многопоточных сценариях, и вы не получите никаких исключений!
Я бы настоятельно рекомендовал посмотреть Joda для чего-либо подобного. Зачем? Это гораздо более насыщенная и интуитивно понятная библиотека времени и времени для Java, чем текущая библиотека (и основы для новой стандартной Java-библиотеки даты и времени, поэтому вы будете изучать скоро будущий стандарт API).
Ответ 4
Если вы используете MySQL и хотите, чтобы сама база данных выполняла преобразование, используйте это:
Если вы предпочитаете форматировать с помощью Java, используйте это:
SimpleDateFormat dateFormat = new SimpleDateFormat("M/dd/yyyy");
dateFormat.format( new Date() );
Ответ 5
Используйте DateFormat
. В интернационализированном приложении используйте формат getInstance
. Если вы хотите явно управлять форматом, создайте новый SimpleDateFormat
самостоятельно.
Ответ 6
Строковое времяFrSSHStr = timeFrSSH.toString();