Hexadécimal (UTF-8) en texte et vice-versa

This commit is contained in:
Divlo 2019-10-05 19:05:15 +02:00
parent cabf5239a3
commit f191f94f20
4 changed files with 45 additions and 8 deletions

View File

@ -25,6 +25,8 @@ Le projet est disponible sur [function.divlo.fr](https://function.divlo.fr/).
| **convertCurrency(value, currency, url)** | Convertis une valeur dans une devise dans une autre devise grâce à l'API [exchangeratesapi.io](https://exchangeratesapi.io/). | - value : la valeur à convertir - currency : la devise à avoir après conversion - url : l'url de la requête à l'API en fonction du paramètre dans l'url '?base=' |
| **utf8ToBin(s)** | Texte en Binaire (UTF-8). | - s : la valeur à convertir |
| **binToUtf8(s)** | Binaire (UTF-8) en Texte. | - s : la valeur à convertir |
| **utf8ToHex(s)** | Texte en Hexadécimal (UTF-8). | - s : la valeur à convertir |
| **hexToUtf8(s)** | Hexadécimal (UTF-8) en Texte. | - s : la valeur à convertir |
| **convertDecimalBinaryHexadecimal(value, option)** | Convertis des nombres de différents bases. | - value : la valeur à convertir - option : En quelle base convertir |
| **convertArabicToRoman(nombre)** | Convertis un nombre arabe en nombre romain. | - nombre : le nombre à convertir |
| **convertRomanToArabic(str)** | Convertis un nombre romain en nombre arabe. | - str : le nombre romain à convertir |

View File

@ -213,6 +213,31 @@ try {
return s;
}
}
// Texte en Hexadécimal (UTF-8)
function utf8ToHex (s) {
try {
s = unescape( encodeURIComponent( s ) );
var chr, i = 0, l = s.length, out = '';
for( ; i < l; i++ ){
chr = s.charCodeAt( i ).toString( 16 );
out += ( chr.length % 2 == 0 ) ? chr : '0' + chr;
out += " ";
}
return out;
}
catch (error) {
return s;
}
}
// Hexadécimal (UTF-8) en Texte
function hexToUtf8 (s) {
try {
return decodeURIComponent( s.replace( /../g, '%$&' ) );
}
catch (error) {
return s;
}
}
// Convertis des nombres de différents bases
function convertDecimalBinaryHexadecimal(value, option) {
try {

View File

@ -201,6 +201,14 @@ $(function () {
$('.results').html(binaryResult);
}
else if (option === 'TextToHexadecimal') {
let result = utf8ToHex(value);
$('.results').html(result.toUpperCase());
}
else if (option === 'HexadecimalToText') {
let result = hexToUtf8(value.replace(/\s/g,''));
$('.results').html(result);
}
else {
$('.results').html(messageError);
}

View File

@ -25,6 +25,8 @@
<option value="HexadecimalToBinary">Hexadécimal en Binaire</option>
<option value="TextToBinary">Texte en Binaire (UTF-8)</option>
<option value="BinaryToText">Binaire (UTF-8) en Texte</option>
<option value="TextToHexadecimal">Texte en Hexadécimal (UTF-8)</option>
<option value="HexadecimalToText">Hexadécimal (UTF-8) en Texte</option>
</select>
<div class="form-row text-center">
<div class="col-12">