Visualizzazione dei risultati da 1 a 8 su 8

Visualizzazione discussione

  1. #8
    Quote Originariamente inviata da Kahm Visualizza il messaggio
    il capo vuole che a qualsiasi formato della data che usi la nazione deve essere gestibile da qualsiasi altra nazione
    esempio: se un utonto in una nazione inserisce 11/12/2018 e quello con il mese ad una cifra legge...che fa?
    Il parsing delle date lo fa il frontend quando i dati entrano nell'applicazione; vengono parsati con il locale corrente, e da quel momento in poi sono dentro al programma come numero di secondi dalla epoch. L'utente dell'altra nazione non vedrà mai il formato del cazzo usato dagli altri utenti, perché questo cessa di esistere tre microsecondi dopo che è stato premuto il tasto salva.
    ho cercato di spiegare che se poi PURE SE FOSSE possibile gestire il mese quando salva poi fa nuovamente casini!
    Il formato mese "ad una sola cifra" è l'ultimo dei problemi - semplicemente non mette lo zero di padding sui mesi minori di 10, puoi leggere entrambi i formati senza problemi.

    Il tuo problema vero sono formati che non puoi distinguere l'uno dall'altro - ad esempio, se leggi 08/09/2013 potrebbe essere l'otto settembre 2013 secondo gran parte dell'Europa, o il nove agosto 2013 secondo praticamente tutti i paesi anglosassoni. Non puoi sapere quale dei due è corretto se non consultando le impostazioni del locale dell'utente che ha inserito il dato, cosa che, se ti salvi solo il dato "as is" come stringa, gli altri client non possono sapere. Per questo motivo, la prima cosa da fare quando si opera con date inserite dall'utente è lato GUI trasformarle immediatamente in un formato sensato (possibilmente numerico, in modo da non dover rifare il parsing di continuo) e non ambiguo; tutto il resto del programma non deve sapere nemmeno per sbaglio delle cretinate dei formati di data.

    Esempio: in Excel mica che le date sono memorizzate come stringhe; appena inserisci una data (e Excel capisce che si tratta di una data secondo il locale corrente) questa viene convertita ad un formato interno (date OLE se ben ricordo, tipo microsecondi dal 31/12/1899 o giù di lì) e visualizzata sempre secondo il formato locale. Se il tuo foglio Excel viene aperto da un anglosassone questo vedrà le date nel suo formato preferito.
    ma chi nel mondo usa M con una cifra?
    perchè questo formato in windows come opzione?
    se NON ESISTE mi toglierei un peso
    Può essere impostato da GUI, quindi è un formato che può capitare. Ma di nuovo, è un non-problema, sia perché non devi essere tu a parsare "alla cieca" i formati di date, sia perché anche fosse parsare entrambi i formati è una banalità.

    Edit: e comunque secondo https://en.wikipedia.org/wiki/Date_format_by_country esiste ed è usato d/m/yyyy in diversi paesi (e in ogni caso, su date inserite a mano esiste tranquillamente in tutti i paesi dd/mm/yyyy). Sempre in quella pagina ti puoi rendere conto che cercare di gestire "alla cieca" tutti i possibili formati di date è semplicemente impossibile.
    purtroppo la data deve essere leggibile dall'utente,
    Nella GUI la data gliela fornisci nel formato che preferisci. Nella trasmissione non sono fatti suoi, o se proprio, usi un formato standard non ambiguo tipo YYYY-MM-DD, che non si presta a dubbi.
    Ultima modifica di MItaly; 22-10-2018 a 20:43
    Amaro C++, il gusto pieno dell'undefined behavior.

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.