//Encode une chane
function htmlentities(texte) {
	texte = texte.replace(/"/g,'&quot;'); // 34 22
	texte = texte.replace(/&/g,'&amp;'); // 38 26
	texte = texte.replace(/\'/g,'&#39;'); // 39 27
	texte = texte.replace(/</g,'&lt;'); // 60 3C
	texte = texte.replace(/>/g,'&gt;'); // 62 3E
	texte = texte.replace(/\^/g,'&circ;'); // 94 5E
	texte = texte.replace(//g,'&lsquo;'); // 145 91
	texte = texte.replace(//g,'&rsquo;'); // 146 92
	texte = texte.replace(//g,'&ldquo;'); // 147 93
	texte = texte.replace(//g,'&rdquo;'); // 148 94
	texte = texte.replace(//g,'&bull;'); // 149 95
	texte = texte.replace(//g,'&ndash;'); // 150 96
	texte = texte.replace(//g,'&mdash;'); // 151 97
	texte = texte.replace(//g,'&tilde;'); // 152 98
	texte = texte.replace(//g,'&trade;'); // 153 99
	texte = texte.replace(//g,'&scaron;'); // 154 9A
	texte = texte.replace(//g,'&rsaquo;'); // 155 9B
	texte = texte.replace(//g,'&oelig;'); // 156 9C
	texte = texte.replace(//g,'&#357;'); // 157 9D
	texte = texte.replace(//g,'&#382;'); // 158 9E
	texte = texte.replace(//g,'&Yuml;'); // 159 9F
	texte = texte.replace(/ /g,'&nbsp;'); // 160 A0
	texte = texte.replace(//g,'&iexcl;'); // 161 A1
	texte = texte.replace(//g,'&cent;'); // 162 A2
	texte = texte.replace(//g,'&pound;'); // 163 A3
	texte = texte.replace(/ /g,'&curren;'); // 164 A4
	texte = texte.replace(//g,'&yen;'); // 165 A5
	texte = texte.replace(//g,'&brvbar;'); // 166 A6
	texte = texte.replace(//g,'&sect;'); // 167 A7
	texte = texte.replace(//g,'&uml;'); // 168 A8
	texte = texte.replace(//g,'&copy;'); // 169 A9
	texte = texte.replace(//g,'&ordf;'); // 170 AA
	texte = texte.replace(//g,'&laquo;'); // 171 AB
	texte = texte.replace(//g,'&not;'); // 172 AC
	texte = texte.replace(//g,'&shy;'); // 173 AD
	texte = texte.replace(//g,'&reg;'); // 174 AE
	texte = texte.replace(//g,'&macr;'); // 175 AF
	texte = texte.replace(//g,'&deg;'); // 176 B0
	texte = texte.replace(//g,'&plusmn;'); // 177 B1
	texte = texte.replace(//g,'&sup2;'); // 178 B2
	texte = texte.replace(//g,'&sup3;'); // 179 B3
	texte = texte.replace(//g,'&acute;'); // 180 B4
	texte = texte.replace(//g,'&micro;'); // 181 B5
	texte = texte.replace(//g,'&para'); // 182 B6
	texte = texte.replace(//g,'&middot;'); // 183 B7
	texte = texte.replace(//g,'&cedil;'); // 184 B8
	texte = texte.replace(//g,'&sup1;'); // 185 B9
	texte = texte.replace(//g,'&ordm;'); // 186 BA
	texte = texte.replace(//g,'&raquo;'); // 187 BB
	texte = texte.replace(//g,'&frac14;'); // 188 BC
	texte = texte.replace(//g,'&frac12;'); // 189 BD
	texte = texte.replace(//g,'&frac34;'); // 190 BE
	texte = texte.replace(//g,'&iquest;'); // 191 BF
	texte = texte.replace(//g,'&Agrave;'); // 192 C0
	texte = texte.replace(//g,'&Aacute;'); // 193 C1
	texte = texte.replace(//g,'&Acirc;'); // 194 C2
	texte = texte.replace(//g,'&Atilde;'); // 195 C3
	texte = texte.replace(//g,'&Auml;'); // 196 C4
	texte = texte.replace(//g,'&Aring;'); // 197 C5
	texte = texte.replace(//g,'&AElig;'); // 198 C6
	texte = texte.replace(//g,'&Ccedil;'); // 199 C7
	texte = texte.replace(//g,'&Egrave;'); // 200 C8
	texte = texte.replace(//g,'&Eacute;'); // 201 C9
	texte = texte.replace(//g,'&Ecirc;'); // 202 CA
	texte = texte.replace(//g,'&Euml;'); // 203 CB
	texte = texte.replace(//g,'&Igrave;'); // 204 CC
	texte = texte.replace(//g,'&Iacute;'); // 205 CD
	texte = texte.replace(//g,'&Icirc;'); // 206 CE
	texte = texte.replace(//g,'&Iuml;'); // 207 CF
	texte = texte.replace(//g,'&ETH;'); // 208 D0
	texte = texte.replace(//g,'&Ntilde;'); // 209 D1
	texte = texte.replace(//g,'&Ograve;'); // 210 D2
	texte = texte.replace(//g,'&Oacute;'); // 211 D3
	texte = texte.replace(//g,'&Ocirc;'); // 212 D4
	texte = texte.replace(//g,'&Otilde;'); // 213 D5
	texte = texte.replace(//g,'&Ouml;'); // 214 D6
	texte = texte.replace(//g,'&times;'); // 215 D7
	texte = texte.replace(//g,'&Oslash;'); // 216 D8
	texte = texte.replace(//g,'&Ugrave;'); // 217 D9
	texte = texte.replace(//g,'&Uacute;'); // 218 DA
	texte = texte.replace(//g,'&Ucirc;'); // 219 DB
	texte = texte.replace(//g,'&Uuml;'); // 220 DC
	texte = texte.replace(//g,'&Yacute;'); // 221 DD
	texte = texte.replace(//g,'&THORN;'); // 222 DE
	texte = texte.replace(//g,'&szlig;'); // 223 DF
	texte = texte.replace(//g,'&agrave;'); // 224 E0
	texte = texte.replace(//g,'&aacute;'); // 225 E1
	texte = texte.replace(//g,'&acirc;'); // 226 E2
	texte = texte.replace(//g,'&atilde;'); // 227 E3
	texte = texte.replace(//g,'&auml;'); // 228 E4
	texte = texte.replace(//g,'&aring;'); // 229 E5
	texte = texte.replace(//g,'&aelig;'); // 230 E6
	texte = texte.replace(//g,'&ccedil;'); // 231 E7
	texte = texte.replace(//g,'&egrave;'); // 232 E8
	texte = texte.replace(//g,'&eacute;'); // 233 E9
	texte = texte.replace(//g,'&ecirc;'); // 234 EA
	texte = texte.replace(//g,'&euml;'); // 235 EB
	texte = texte.replace(//g,'&igrave;'); // 236 EC
	texte = texte.replace(//g,'&iacute;'); // 237 ED
	texte = texte.replace(//g,'&icirc;'); // 238 EE
	texte = texte.replace(//g,'&iuml;'); // 239 EF
	texte = texte.replace(//g,'&eth;'); // 240 F0
	texte = texte.replace(//g,'&ntilde;'); // 241 F1
	texte = texte.replace(//g,'&ograve;'); // 242 F2
	texte = texte.replace(//g,'&oacute;'); // 243 F3
	texte = texte.replace(//g,'&ocirc;'); // 244 F4
	texte = texte.replace(//g,'&otilde;'); // 245 F5
	texte = texte.replace(//g,'&ouml;'); // 246 F6
	texte = texte.replace(//g,'&divide;'); // 247 F7
	texte = texte.replace(//g,'&oslash;'); // 248 F8
	texte = texte.replace(//g,'&ugrave;'); // 249 F9
	texte = texte.replace(//g,'&uacute;'); // 250 FA
	texte = texte.replace(//g,'&ucirc;'); // 251 FB
	texte = texte.replace(//g,'&uuml;'); // 252 FC
	texte = texte.replace(//g,'&yacute;'); // 253 FD
	texte = texte.replace(//g,'&thorn;'); // 254 FE
	texte = texte.replace(//g,'&yuml;'); // 255 FF
	return texte;
}
//Dcode une chane
function html_entity_decode(texte) {
	texte = texte.replace(/&quot;/g,'"'); // 34 22
	texte = texte.replace(/&amp;/g,'&'); // 38 26	
	texte = texte.replace(/&#39;/g,"'"); // 39 27
	texte = texte.replace(/&lt;/g,'<'); // 60 3C
	texte = texte.replace(/&gt;/g,'>'); // 62 3E
	texte = texte.replace(/&circ;/g,'^'); // 94 5E
	texte = texte.replace(/&lsquo;/g,''); // 145 91
	texte = texte.replace(/&rsquo;/g,''); // 146 92
	texte = texte.replace(/&ldquo;/g,''); // 147 93
	texte = texte.replace(/&rdquo;/g,''); // 148 94
	texte = texte.replace(/&bull;/g,''); // 149 95
	texte = texte.replace(/&ndash;/g,''); // 150 96
	texte = texte.replace(/&mdash;/g,''); // 151 97
	texte = texte.replace(/&tilde;/g,''); // 152 98
	texte = texte.replace(/&trade;/g,''); // 153 99
	texte = texte.replace(/&scaron;/g,''); // 154 9A
	texte = texte.replace(/&rsaquo;/g,''); // 155 9B
	texte = texte.replace(/&oelig;/g,''); // 156 9C
	texte = texte.replace(/&#357;/g,''); // 157 9D
	texte = texte.replace(/&#382;/g,''); // 158 9E
	texte = texte.replace(/&Yuml;/g,''); // 159 9F
	texte = texte.replace(/&nbsp;/g,' '); // 160 A0
	texte = texte.replace(/&iexcl;/g,''); // 161 A1
	texte = texte.replace(/&cent;/g,''); // 162 A2
	texte = texte.replace(/&pound;/g,''); // 163 A3
	texte = texte.replace(/&curren;/g,' '); // 164 A4
	texte = texte.replace(/&yen;/g,''); // 165 A5
	texte = texte.replace(/&brvbar;/g,''); // 166 A6
	texte = texte.replace(/&sect;/g,''); // 167 A7
	texte = texte.replace(/&uml;/g,''); // 168 A8
	texte = texte.replace(/&copy;/g,''); // 169 A9
	texte = texte.replace(/&ordf;/g,''); // 170 AA
	texte = texte.replace(/&laquo;/g,''); // 171 AB
	texte = texte.replace(/&not;/g,''); // 172 AC
	texte = texte.replace(/&shy;/g,''); // 173 AD
	texte = texte.replace(/&reg;/g,''); // 174 AE
	texte = texte.replace(/&macr;/g,''); // 175 AF
	texte = texte.replace(/&deg;/g,''); // 176 B0
	texte = texte.replace(/&plusmn;/g,''); // 177 B1
	texte = texte.replace(/&sup2;/g,''); // 178 B2
	texte = texte.replace(/&sup3;/g,''); // 179 B3
	texte = texte.replace(/&acute;/g,''); // 180 B4
	texte = texte.replace(/&micro;/g,''); // 181 B5
	texte = texte.replace(/&para/g,''); // 182 B6
	texte = texte.replace(/&middot;/g,''); // 183 B7
	texte = texte.replace(/&cedil;/g,''); // 184 B8
	texte = texte.replace(/&sup1;/g,''); // 185 B9
	texte = texte.replace(/&ordm;/g,''); // 186 BA
	texte = texte.replace(/&raquo;/g,''); // 187 BB
	texte = texte.replace(/&frac14;/g,''); // 188 BC
	texte = texte.replace(/&frac12;/g,''); // 189 BD
	texte = texte.replace(/&frac34;/g,''); // 190 BE
	texte = texte.replace(/&iquest;/g,''); // 191 BF
	texte = texte.replace(/&Agrave;/g,'\300'); // 192 C0
	texte = texte.replace(/&Aacute;/g,'\301'); // 193 C1
	texte = texte.replace(/&Acirc;/g,'\302'); // 194 C2
	texte = texte.replace(/&Atilde;/g,'\303'); // 195 C3
	texte = texte.replace(/&Auml;/g,'\304'); // 196 C4
	texte = texte.replace(/&Aring;/g,'\305'); // 197 C5
	texte = texte.replace(/&AElig;/g,'\306'); // 198 C6
	texte = texte.replace(/&Ccedil;/g,'\307'); // 199 C7
	texte = texte.replace(/&Egrave;/g,'\310'); // 200 C8
	texte = texte.replace(/&Eacute;/g,'\311'); // 201 C9
	texte = texte.replace(/&Ecirc;/g,'\312'); // 202 CA
	texte = texte.replace(/&Euml;/g,'\313'); // 203 CB
	texte = texte.replace(/&Igrave;/g,'\314'); // 204 CC
	texte = texte.replace(/&Iacute;/g,'\315'); // 205 CD
	texte = texte.replace(/&Icirc;/g,'\316'); // 206 CE
	texte = texte.replace(/&Iuml;/g,'\317'); // 207 CF
	texte = texte.replace(/&ETH;/g,'\320'); // 208 D0
	texte = texte.replace(/&Ntilde;/g,'\321'); // 209 D1
	texte = texte.replace(/&Ograve;/g,'\322'); // 210 D2
	texte = texte.replace(/&Oacute;/g,'\323'); // 211 D3
	texte = texte.replace(/&Ocirc;/g,'\324'); // 212 D4
	texte = texte.replace(/&Otilde;/g,'\325'); // 213 D5
	texte = texte.replace(/&Ouml;/g,'\326'); // 214 D6
	texte = texte.replace(/&times;/g,''); // 215 D7
	texte = texte.replace(/&Oslash;/g,'\330'); // 216 D8
	texte = texte.replace(/&Ugrave;/g,'\331'); // 217 D9
	texte = texte.replace(/&Uacute;/g,'\332'); // 218 DA
	texte = texte.replace(/&Ucirc;/g,'\333'); // 219 DB
	texte = texte.replace(/&Uuml;/g,'\334'); // 220 DC
	texte = texte.replace(/&Yacute;/g,'\335'); // 221 DD
	texte = texte.replace(/&THORN;/g,'\336'); // 222 DE
	texte = texte.replace(/&szlig;/g,'\337'); // 223 DF
	texte = texte.replace(/&agrave;/g,'\340'); // 224 E0
	texte = texte.replace(/&aacute;/g,'\341'); // 225 E1
	texte = texte.replace(/&acirc;/g,'\342'); // 226 E2
	texte = texte.replace(/&atilde;/g,'\343'); // 227 E3
	texte = texte.replace(/&auml;/g,'\344'); // 228 E4
	texte = texte.replace(/&aring;/g,'\345'); // 229 E5
	texte = texte.replace(/&aelig;/g,'\346'); // 230 E6
	texte = texte.replace(/&ccedil;/g,'\347'); // 231 E7
	texte = texte.replace(/&egrave;/g,'\350'); // 232 E8
	texte = texte.replace(/&eacute;/g,'\351'); // 233 E9
	texte = texte.replace(/&ecirc;/g,'\352'); // 234 EA
	texte = texte.replace(/&euml;/g,'\353'); // 235 EB
	texte = texte.replace(/&igrave;/g,'\354'); // 236 EC
	texte = texte.replace(/&iacute;/g,'\355'); // 237 ED
	texte = texte.replace(/&icirc;/g,'\356'); // 238 EE
	texte = texte.replace(/&iuml;/g,'\357'); // 239 EF
	texte = texte.replace(/&eth;/g,'\360'); // 240 F0
	texte = texte.replace(/&ntilde;/g,'\361'); // 241 F1
	texte = texte.replace(/&ograve;/g,'\362'); // 242 F2
	texte = texte.replace(/&oacute;/g,'\363'); // 243 F3
	texte = texte.replace(/&ocirc;/g,'\364'); // 244 F4
	texte = texte.replace(/&otilde;/g,'\365'); // 245 F5
	texte = texte.replace(/&ouml;/g,'\366'); // 246 F6
	texte = texte.replace(/&divide;/g,''); // 247 F7
	texte = texte.replace(/&oslash;/g,''); // 248 F8
	texte = texte.replace(/&ugrave;/g,'\371'); // 249 F9
	texte = texte.replace(/&uacute;/g,'\372'); // 250 FA
	texte = texte.replace(/&ucirc;/g,'\373'); // 251 FB
	texte = texte.replace(/&uuml;/g,'\374'); // 252 FC
	texte = texte.replace(/&yacute;/g,'\375'); // 253 FD
	texte = texte.replace(/&thorn;/g,'\376'); // 254 FE
	texte = texte.replace(/&yuml;/g,'\377'); // 255 FF
	
	return texte;
}
