```
@eco disattivato
::Valore della data, nel formato AAAAMMGG
imposta DATA_VALUE=20220715
::Estrarre le parti del mese e del giorno
imposta MESE=%DATA_VALORE:~4,2%
imposta GIORNO=%DATA_VALORE:~6,2%
::Converti il mese in un numero compreso tra 1 e 12 utilizzando SCELTA /N (se necessario)
se %MONTH% NEQ 1 se %MONTH% NEQ 2 se %MONTH% NEQ 3 ...
scelta /n /c:123456789101112
::Utilizza le parti MESE e GIORNO per calcolare il DOY
impostare DOY=0
::Aggiungere il numero di giorni per ogni mese (31 per gennaio, 28 o 29 per febbraio, 31 per marzo, ...)
se %MONTH% GEQ 2 ( imposta /a DOY+=31 )
se %MONTH% GEQ 3 ( imposta /a DOY+=28 )
se %MONTH% GEQ 4 ( imposta /a DOY+=31 )
se %MONTH% GEQ 5 ( imposta /a DOY+=30 )
se %MONTH% GEQ 6 ( imposta /a DOY+=31 )
se %MONTH% GEQ 7 ( imposta /a DOY+=30 )
se %MONTH% GEQ 8 ( imposta /a DOY+=31 )
se %MONTH% GEQ 9 ( imposta /a DOY+=31 )
se %MONTH% GEQ 10 ( imposta /a DOY+=30 )
se %MONTH% GEQ 11 ( imposta /a DOY+=31 )
se %MONTH% GEQ 12 ( imposta /a DOY+=30 )
::Aggiungere il numero del giorno
imposta /a DOY+=%GIORNO%
::Visualizza il DOY
eco Giorno dell'anno (DOY):%DOY%
pausa
```
Spiegazioni:
1. Estrai parti della data :Utilizzare `%DATE_VALUE:~4,2%` per estrarre il mese (dal 4° al 5° carattere) e `%DATE_VALUE:~6,2%` per estrarre il giorno.
2. Converti numero del mese :utilizza `CHOICE /N` per ottenere un numero numerico del mese se non è in un formato standard.
3. Calcola DOY :Calcola il DOY aggiungendo gradualmente il numero di giorni per ogni mese a partire da febbraio.
4. Visualizza DOY :Visualizza il DOY calcolato utilizzando "echo".
Questo approccio fornisce un metodo di base per analizzare il giorno dell'anno da una determinata stringa di data. È possibile modificare lo script in base alle proprie esigenze specifiche.
software © www.354353.com