predicción de formato de fecha mediante el uso de muestras de fechas como entrada

user2450833:

la búsqueda de un método que toma una lista de fechas (de tipo cadena) como entradas y devuelve posibles formatos de fecha.

por ejemplo: de entrada es [ "01/02/2018", "13/09/2018", "08/11/2016"] entonces la salida debe ser "dd / MM / aaaa".

este es uno de los ejemplo. debería ser capaz de devolver todos los formatos de fecha compatibles con Java que mejor se adapte para la entrada dada.

VV Ole:

No creo que un procedimiento de este tipo es fácilmente disponible. Usted tendrá que codificar por sí mismo.

Es posible, aunque no siempre es posible dar una respuesta única.

Requerir exactamente tres números en la cadena y los mismos separadores antes, entre y después de los números de cada cadena. Recoger el primer, el segundo y el tercer número de cada cadena. Encontrar el mínimo y el máximo de cada uno. Estoy tomando el ejemplo:

[ "01/02/2018", "13/9/2018", "08/11/2016"]

  • En primer número ha min 1 y max 13
  • Segundo número Har min 2 y max 11
  • Tercer número ha min 2016 y max 2018

El año es fácil, que es el número mínimo y máximo, donde se encuentran, por ejemplo, de 1900 hasta 2100. Elija límites que se adapten a su situación. Mes es el número que no pasa por encima de 12. En el ejemplo, el segundo número es el mes transcurrido desde la primera tiene un máximo de 13. Si ninguno de los números no sube por encima de 12 años, no se puede decidir y necesitarán lanzar una excepción o similares. Una vez que haya decidido el año y el mes, el número no ha utilizado, es el día del mes. Compruebe que está dentro de 1 a 31 para su validación.

Para el día y mes: Si hay una ocurrencia con un cero ( 01y 02en su ejemplo) y todas las ocurrencias tener dos dígitos, requieren de dos dígitos en el formato, utilizando ddo MM. De lo contrario usar do M(que imprimirá suficientes dígitos para el número y analizará tanto un dígito y la entrada de dos dígitos). Debido a que en su ejemplo mes se da como 9(un dígito, en la segunda cadena) y 8como el día, el uso dy M.

Resultado final: d/M/uuuuo d/M/yyyy.

Feliz de codificación.

Supongo que te gusta

Origin http://43.154.161.224:23101/article/api/json?id=187346&siteId=1
Recomendado
Clasificación