Sources JavaConsultez toutes les sources
Nombre d'auteurs : 29, nombre de sources : 134, création le 13 avril 2013
Méthode permettant de transformer une Stack Trace en String
public
static
String getStackTrace
( Throwable aThrowable ) {
Writer result =
new
StringWriter
();
PrintWriter printWriter =
new
PrintWriter
( result );
aThrowable.printStackTrace
( printWriter );
return
result.toString
();
}
L’algorithme suivant permet de générer une variable aléatoire suivant une loi de Poisson ayant une distribution exponentielle de paramètre lambda.
public
static
double
Exp
(double
lambda) {
Random rand =
new
Random
();
return
-
(1
/
lambda) *
log
( 1
-
rand.nextDouble
() );
}
Une Helper class pour les DATEs lorsqu'on veut faire des opérations sur les jours ouvrables (ajout, suppression, difference)
Classe utilitaire pour le formatage, les manipulations de String. Cette classe permet même le formatage de requêtes SQL
Avantage :
- Conserve la casse Majuscule / Minuscule
- Transforme certains caractères spéciaux tel que ÷ en /
- Gére le bi-caractères tels que Æ en AE
- La transformation est efficace en determinant si le caractère est considéré avec accent ou non.
Inconvenient :
- la taille de la chaine résultat peut ne pas faire la même taille que la source. nottament a cause de Æ et æ
- Certains caractères spéciaux sont transformé même si ce n'etait pas voulu.
package
xxxx;
import
java.util.*;
/**
Classe
complementaire
du
J2SDK
sur
la
manipulation
de
chaines
de
caractéres
*
Permet
nottament
de
supprimer
les
accents
d
'
une
chaine
de
caractères
*
*/
public
abstract
class
StringOperation
{
/**
Index
du
1er
caractere
accentué
*
*/
private
static
final
int
MIN =
192
;
/**
Index
du
dernier
caractere
accentué
*
*/
private
static
final
int
MAX =
255
;
/**
Vecteur
de
correspondance
entre
accent
/
sans
accent
*
*/
private
static
final
Vector map =
initMap
();
/**
Initialisation
du
tableau
de
correspondance
entre
les
caractéres
accentués
*
et
leur
homologues
non
accentués
*/
private
static
Vector initMap
()
{
Vector Result =
new
Vector
();
java.lang.String car =
null
;
car =
new
java.lang.String
("
A
"
);
Result.add
( car ); /*
'\u00C0'
À
alt-0192
*/
Result.add
( car ); /*
'\u00C1'
Á
alt-0193
*/
Result.add
( car ); /*
'\u00C2'
Â
alt-0194
*/
Result.add
( car ); /*
'\u00C3'
Ã
alt-0195
*/
Result.add
( car ); /*
'\u00C4'
Ä
alt-0196
*/
Result.add
( car ); /*
'\u00C5'
Å
alt-0197
*/
car =
new
java.lang.String
("
AE
"
);
Result.add
( car ); /*
'\u00C6'
Æ
alt-0198
*/
car =
new
java.lang.String
("
C
"
);
Result.add
( car ); /*
'\u00C7'
Ç
alt-0199
*/
car =
new
java.lang.String
("
E
"
);
Result.add
( car ); /*
'\u00C8'
È
alt-0200
*/
Result.add
( car ); /*
'\u00C9'
É
alt-0201
*/
Result.add
( car ); /*
'\u00CA'
Ê
alt-0202
*/
Result.add
( car ); /*
'\u00CB'
Ë
alt-0203
*/
car =
new
java.lang.String
("
I
"
);
Result.add
( car ); /*
'\u00CC'
Ì
alt-0204
*/
Result.add
( car ); /*
'\u00CD'
Í
alt-0205
*/
Result.add
( car ); /*
'\u00CE'
Î
alt-0206
*/
Result.add
( car ); /*
'\u00CF'
Ï
alt-0207
*/
car =
new
java.lang.String
("
D
"
);
Result.add
( car ); /*
'\u00D0'
Ð
alt-0208
*/
car =
new
java.lang.String
("
N
"
);
Result.add
( car ); /*
'\u00D1'
Ñ
alt-0209
*/
car =
new
java.lang.String
("
O
"
);
Result.add
( car ); /*
'\u00D2'
Ò
alt-0210
*/
Result.add
( car ); /*
'\u00D3'
Ó
alt-0211
*/
Result.add
( car ); /*
'\u00D4'
Ô
alt-0212
*/
Result.add
( car ); /*
'\u00D5'
Õ
alt-0213
*/
Result.add
( car ); /*
'\u00D6'
Ö
alt-0214
*/
car =
new
java.lang.String
("
*
"
);
Result.add
( car ); /*
'\u00D7'
×
alt-0215
*/
car =
new
java.lang.String
("
0
"
);
Result.add
( car ); /*
'\u00D8'
Ø
alt-0216
*/
car =
new
java.lang.String
("
U
"
);
Result.add
( car ); /*
'\u00D9'
Ù
alt-0217
*/
Result.add
( car ); /*
'\u00DA'
Ú
alt-0218
*/
Result.add
( car ); /*
'\u00DB'
Û
alt-0219
*/
Result.add
( car ); /*
'\u00DC'
Ü
alt-0220
*/
car =
new
java.lang.String
("
Y
"
);
Result.add
( car ); /*
'\u00DD'
Ý
alt-0221
*/
car =
new
java.lang.String
("
Þ
"
);
Result.add
( car ); /*
'\u00DE'
Þ
alt-0222
*/
car =
new
java.lang.String
("
B
"
);
Result.add
( car ); /*
'\u00DF'
ß
alt-0223
*/
car =
new
java.lang.String
("
a
"
);
Result.add
( car ); /*
'\u00E0'
à
alt-0224
*/
Result.add
( car ); /*
'\u00E1'
á
alt-0225
*/
Result.add
( car ); /*
'\u00E2'
â
alt-0226
*/
Result.add
( car ); /*
'\u00E3'
ã
alt-0227
*/
Result.add
( car ); /*
'\u00E4'
ä
alt-0228
*/
Result.add
( car ); /*
'\u00E5'
å
alt-0229
*/
car =
new
java.lang.String
("
ae
"
);
Result.add
( car ); /*
'\u00E6'
æ
alt-0230
*/
car =
new
java.lang.String
("
c
"
);
Result.add
( car ); /*
'\u00E7'
ç
alt-0231
*/
car =
new
java.lang.String
("
e
"
);
Result.add
( car ); /*
'\u00E8'
è
alt-0232
*/
Result.add
( car ); /*
'\u00E9'
é
alt-0233
*/
Result.add
( car ); /*
'\u00EA'
ê
alt-0234
*/
Result.add
( car ); /*
'\u00EB'
ë
alt-0235
*/
car =
new
java.lang.String
("
i
"
);
Result.add
( car ); /*
'\u00EC'
ì
alt-0236
*/
Result.add
( car ); /*
'\u00ED'
í
alt-0237
*/
Result.add
( car ); /*
'\u00EE'
î
alt-0238
*/
Result.add
( car ); /*
'\u00EF'
ï
alt-0239
*/
car =
new
java.lang.String
("
d
"
);
Result.add
( car ); /*
'\u00F0'
ð
alt-0240
*/
car =
new
java.lang.String
("
n
"
);
Result.add
( car ); /*
'\u00F1'
ñ
alt-0241
*/
car =
new
java.lang.String
("
o
"
);
Result.add
( car ); /*
'\u00F2'
ò
alt-0242
*/
Result.add
( car ); /*
'\u00F3'
ó
alt-0243
*/
Result.add
( car ); /*
'\u00F4'
ô
alt-0244
*/
Result.add
( car ); /*
'\u00F5'
õ
alt-0245
*/
Result.add
( car ); /*
'\u00F6'
ö
alt-0246
*/
car =
new
java.lang.String
("
/
"
);
Result.add
( car ); /*
'\u00F7'
÷
alt-0247
*/
car =
new
java.lang.String
("
0
"
);
Result.add
( car ); /*
'\u00F8'
ø
alt-0248
*/
car =
new
java.lang.String
("
u
"
);
Result.add
( car ); /*
'\u00F9'
ù
alt-0249
*/
Result.add
( car ); /*
'\u00FA'
ú
alt-0250
*/
Result.add
( car ); /*
'\u00FB'
û
alt-0251
*/
Result.add
( car ); /*
'\u00FC'
ü
alt-0252
*/
car =
new
java.lang.String
("
y
"
);
Result.add
( car ); /*
'\u00FD'
ý
alt-0253
*/
car =
new
java.lang.String
("
þ
"
);
Result.add
( car ); /*
'\u00FE'
þ
alt-0254
*/
car =
new
java.lang.String
("
y
"
);
Result.add
( car ); /*
'\u00FF'
ÿ
alt-0255
*/
Result.add
( car ); /*
'\u00FF'
alt-0255
*/
return
Result;
}
/**
Transforme
une
chaine
pouvant
contenir
des
accents
dans
une
version
sans
accent
*
@param
chaine
Chaine
a
convertir
sans
accent
*
@return
Chaine
dont
les
accents
ont
été
supprimé
*
*/
public
static
java.lang.String sansAccent
(java.lang.String chaine)
{
java.lang.StringBuffer Result =
new
StringBuffer
(chaine);
for
(int
bcl =
0
; bcl <
Result.length
() ; bcl+
+
)
{
int
carVal =
chaine.charAt
(bcl);
if
( carVal >=
MIN &
&
carVal <=
MAX )
{
//
Remplacement
java.lang.String newVal =
(java.lang.String)map.get
( carVal -
MIN );
Result.replace
(bcl, bcl+
1
,newVal);
}
}
return
Result.toString
();
}
}
L'utilisation est simple :
String chaine =
"
Accés
à
la
base
"
;
String chaine2 =
StringOperation.sansAccent
(chaine);
System.out.println
("
chaine
origine
:
"
+
chaine );
System.out.println
("
chaine
sans
accents
:
"
+
chaine2 );
Cette classe permet d'afficher toutes les polices disponibles sur la plateforme.
import
java.awt.*;
public
class
Polices {
public
static
void
main
(String[] args) {
String font[] =
GraphicsEnvironment.getLocalGraphicsEnvironment
().getAvailableFontFamilyNames
();
for
(int
i =
0
; i <
font.length; i+
+
) {
System.out.println
(font[i]);
}
}
}
Lancez le programme puis faites un glisser-déposer des fichiers dont vous désirez remplacer les lettres accentuées par leur équivalent html. Le fichier original est sauvegardé dans un sous-dossier "BAK".
Classifieur Naive Bayes doublement incrémental, pour des données continues. Cet algorithme est une amélioration du Naïve Bayes original. Il est incrémental dans le sens qu'il est possible d'ajouter des instances à un apprentissage existant. Il n'est ainsi plus indispensable de séparer hermétiquement la phase d'apprentissage de la phase de test. En utilisant les fonctions d'enregistrement et récupération des tables, il devient ainsi possible de répartir un apprentissage en plusieurs sessions. Il est également incrémental dans le sens qu'il est possible d'ajouter, en cours d'apprentissage, des nouvelles classes cibles. C'est donc pour ces deux raisons que le classifieur est dit doublement incrémental.