Ottenere la data corrente in millisecondi
Per ottenere il tempo corrente in millisecondi (l’equivalente della funzione timer nella maggioranza dei linguaggi di programmazione) :
Ottenere la data corrente in millisecondi
Per ottenere il tempo corrente in millisecondi (l’equivalente della funzione timer nella maggioranza dei linguaggi di programmazione) :
invece di:
Date d = new Date();
Systtem.out.printl(“ANNO CORRENTE:” + d.getYear());
Che invece mostrerebbe come risultato (nel 2009):
ANNO CORRENTE:109
La funzione ha impostato come primo giorno della settimana il lunedì, in caso si voglia cambiare il giorno di rifermento va cambiato nel codice Calendar.MONDAY con la costante del giorno che interessa (definita nella classe Calendar)
Per ottenere un listing di una directory di file, ordinata per data, si può usare il seguente codice:
import java.io.*;
import java.util.Arrays;
import java.util.Comparator;
import java.util.Date;
public class FileUtils{
public static void main(String args[]) throws Exception {
String cartella=”c://miacartella”);
File files[] = FileUtils.dirListByAscendingDate
(new File(cartella));
for (File file : files) {
System.out.println(file.getName() + ” ”
+ new Date(file.lastModified()));
}
System.out.println(“DIR ->”);
files = FileUtils.dirListByDescendingDate
(new File(“C:/Applications/folder”));
for (File file : files) {
System.out.println(file.getName() + “t”
+ new Date(file.lastModified()));
}
}
public static File[] dirListByAscendingDate(File folder) {
if (!folder.isDirectory()) {
return null;
}
File files[] = folder.listFiles();
Arrays.sort( files, new Comparator()
{
public int compare(final Object o1, final Object o2) {
return new Long(((File)o1).lastModified()).compareTo
(new Long(((File) o2).lastModified()));
}
});
return files;
}
public static File[] dirListByDescendingDate(File folder) {
if (!folder.isDirectory()) {
return null;
}
File files[] = folder.listFiles();
Arrays.sort( files, new Comparator()
{
public int compare(final Object o1, final Object o2) {
return new Long(((File)o2).lastModified()).compareTo
(new Long(((File) o1).lastModified()));
}
});
return files;
}
}
In realtà chi fa il lavoro “sporco” di ordinamento è il codice di Compare:
public int compare(final Object o1, final Object o2) {
return new Long(((File)o1).lastModified()).compareTo
(new Long(((File) o2).lastModified()));
che può essere personalizzato all’occorrenza su qualsiasi campo di proprietà dell’oggetto File.
I database Oracle usano il tipo CLOB per la memorizzazione di testi estremamente lunghi (superiori ai 4000 caratteri nella versione 10), la memorizzazione di una stringa Java in questi campi non è possibile direttamente e richiede dunque una conversione.
Di seguito il codice per la conversione:
public static CLOB getCLOB( String clobData )
{
try{
return getCLOB(createConnection(), clobData);
}catch ( Exception exp ) {
//TODO: Stampa dell’errore
return null;
}
}
public static CLOB getCLOB(Connection connection, String clobData )
throws Exception {
CLOB tempClob = null;
try {
// crea un nuovo CLOB temporaneo
tempClob = CLOB.createTemporary(connection, true, CLOB.DURATION_SESSION );
// Aple il CLOB temporaneo in modalità read/write per abilitarne la scirttura
tempClob.open( CLOB.MODE_READWRITE );
Writer tempClobWriter = tempClob.getCharacterOutputStream( );
tempClobWriter.write( clobData );
tempClobWriter.flush( );
//Chiude lo stream
tempClobWriter.close( );
// Chiude il CLOB temporaneo
tempClob.close( );
} catch ( Exception exp ) {
// Rilascia l’oggetto CLOB
tempClob.freeTemporary( );
//TODO
}
//Restituisce il clob elaborato
return tempClob;
}