Hexadécimal (UTF-8) en texte et vice-versa
This commit is contained in:
		| @@ -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  | | ||||
|   | ||||
| @@ -202,16 +202,41 @@ function utf8ToBin(s) { | ||||
| } | ||||
| // Binaire (UTF-8) en Texte | ||||
| function binToUtf8(s){ | ||||
| try { | ||||
|     var i = 0, l = s.length, chr, out = ''; | ||||
|     for( ; i < l; i += 8){ | ||||
|         chr = parseInt( s.substr(i, 8 ), 2).toString(16); | ||||
|         out += '%' + ((chr.length % 2 == 0) ? chr : '0' + chr); | ||||
|     try { | ||||
|         var i = 0, l = s.length, chr, out = ''; | ||||
|         for( ; i < l; i += 8){ | ||||
|             chr = parseInt( s.substr(i, 8 ), 2).toString(16); | ||||
|             out += '%' + ((chr.length % 2 == 0) ? chr : '0' + chr); | ||||
|         } | ||||
|         return decodeURIComponent(out); | ||||
|     } catch (error) { | ||||
|         return s; | ||||
|     } | ||||
|     return decodeURIComponent(out); | ||||
| } catch (error) { | ||||
|     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) { | ||||
|   | ||||
| @@ -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); | ||||
|           } | ||||
|   | ||||
| @@ -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"> | ||||
|   | ||||
		Reference in New Issue
	
	Block a user