Autore Topic: Calendario italiano o inglese?  (Letto 405 volte)

Offline robyrocker89

  • Utente junior
  • **
  • Post: 55
  • Respect: +1
    • roberto-tucci
    • Mostra profilo
  • Dispositivo Android:
    Samsung Galaxy Nexus
  • Sistema operativo:
    Windows
Calendario italiano o inglese?
« il: 03 Aprile 2014, 12:59:34 CEST »
0
Ciao a tutti,
ho un dubbio immane che mi assale da settimane e cercando su google, non ho trovato granchè...e perciò mi rivolgo a voi, nella speranza possiate darmi un buon consiglio!
In pratica sto sviluppando un'app che prevede il calcolo di ore, giorni ecc... per determinate elaborazioni in base ad un range di date. Siccome necessito di calcolare il periodo della settimana (dal lunedi alla domenica), mi chiedevo se valeva la pena lasciare all'utente la decisione di scegliere se utilizzare la settimana inglese (dalla domenica al sabato) oppure quella nostrana (dal lunedi alla domenica). Informandomi, ho scoperto che la tipologia di calendario nostrano è conforme agli standard ISO e quindi, in teoria, potrei utilizzare solo quella. Ma la tipologia inglese è ancora utilizzata? Oppure è solo qualcosa di oramai "folkloristico"? Anche perchè questa tipologia di settimana è utilizzata in altri paesi del mondo e non vorrei squilibrare la vita di nessuno!  O:-)
Poi il secondo fattore è la gestione a livello di codice Java: so che, ad esempio, esistono funzioni per determinare in quale settimana dell'anno ci si trovi. Ma è gestita anche la tipologia di calendario inglese? Oppure nel caso dovrei fare tutto a manina?  :-X

Grazie!
TimeReport: your time. In your pocket.

Offline Sakazaki

  • Utente normale
  • ***
  • Post: 396
  • Respect: +74
    • Mostra profilo
  • Dispositivo Android:
    Sony xperia Z
  • Play Store ID:
    Saka Labs
  • Sistema operativo:
    Windows 8
Re:Calendario italiano o inglese?
« Risposta #1 il: 03 Aprile 2014, 14:23:08 CEST »
0
Fermo restando che non ho capito qual'è il problema (i problemi?) che potresti avere...
Puoi sempre sapere che tipo di settimana è usata dal dispositivo semplicemente usando il getFirstDayOfWeek() della classe Calendar.

Per avere la settimana corrente si può ricorrere a:
Codice (Java): [Seleziona]
Calendar.getInstance().get( Calendar.WEEK_OF_YEAR )
Il valore tornato dipende sia dal già citato getFirstDayOfWeek() che getMinimalDaysInFirstWeek() che sono preimpostate in base al locale del calendario in uso sul dispositivo.

Citazione
First Week

Calendar defines a locale-specific seven day week using two parameters: the first day of the week and the minimal days in first week (from 1 to 7). These numbers are taken from the locale resource data when a Calendar is constructed. They may also be specified explicitly through the methods for setting their values.

When setting or getting the WEEK_OF_MONTH or WEEK_OF_YEAR fields, Calendar must determine the first week of the month or year as a reference point. The first week of a month or year is defined as the earliest seven day period beginning on getFirstDayOfWeek() and containing at least getMinimalDaysInFirstWeek() days of that month or year. Weeks numbered ..., -1, 0 precede the first week; weeks numbered 2, 3,... follow it. Note that the normalized numbering returned by get() may be different. For example, a specific Calendar subclass may designate the week before week 1 of a year as week n of the previous year.

Tutto ruota attorno alla classe Calendar.

Offline robyrocker89

  • Utente junior
  • **
  • Post: 55
  • Respect: +1
    • roberto-tucci
    • Mostra profilo
  • Dispositivo Android:
    Samsung Galaxy Nexus
  • Sistema operativo:
    Windows
Re:Calendario italiano o inglese?
« Risposta #2 il: 03 Aprile 2014, 14:37:53 CEST »
0
Fermo restando che non ho capito qual'è il problema (i problemi?) che potresti avere...
Puoi sempre sapere che tipo di settimana è usata dal dispositivo semplicemente usando il getFirstDayOfWeek() della classe Calendar.

Per avere la settimana corrente si può ricorrere a:
Codice (Java): [Seleziona]
Calendar.getInstance().get( Calendar.WEEK_OF_YEAR )
Il valore tornato dipende sia dal già citato getFirstDayOfWeek() che getMinimalDaysInFirstWeek() che sono preimpostate in base al locale del calendario in uso sul dispositivo.

Tutto ruota attorno alla classe Calendar.

Ah! Ecco! Questa potrebbe essere la mia soluzione! Non credevo che la classe Calendar potesse gestire i vari calendari in base alla locazione del calendario!
Comunque il problema era più che altro sapere se, culturalmente parlando, gli inglesi (o chi, come loro) utilizzano ancora la loro notazione oppure si sono convertiti/abituati alla nostra...
Passando al lato più pratico: se tu fossi inglese, preferiresti vedere una settimana dal lunedi alla domenica o dalla domenica al sabato?
Ad ogni modo, penso che la classe Calendar possa risolvere i miei problemi!  :-) Grazie!
TimeReport: your time. In your pocket.

Offline Sakazaki

  • Utente normale
  • ***
  • Post: 396
  • Respect: +74
    • Mostra profilo
  • Dispositivo Android:
    Sony xperia Z
  • Play Store ID:
    Saka Labs
  • Sistema operativo:
    Windows 8
Re:Calendario italiano o inglese?
« Risposta #3 il: 03 Aprile 2014, 14:44:24 CEST »
0
La classe Calendar fa un sacco di cose (anche quelle che non ti aspetti), merita un approfondimento ;)