| DEVELOPER TOOLS ASP Documentation Tool .NET Documentation Tool PHP Documentation Tool SQL Documentation Tool VB6 Documentation Tool Indexing Service Companion The Website Utility TECHNICAL
ARTICLES PHOTO GALLERIES TRAVEL LOG NEW STUFF POPULAR STUFF LINKS
|
ROT13 Encoding in ASP.NET using C# and VB.NETThis article is based on an article I wrote that described how to encode and decode strings using the ROT13 method in ASP (VBScript and JScript) and client-side JavaScript. The ROT13 method is a very old method of encoding (but not encrypting!) text, but given the original article's popularity I thought it would be useful to update it for the .NET Framework using both C# and VB.NET. ROT13 Encoding Using VB.NETIn this example, a ROT13 encoding/decoding function is created as a function named ROT13Encode within a class called TextEncoder. The code for the TextEncoder class is shown below. The class can be compiled into a binary component file, ROT13Converter.dll by using the following syntax from the command line: vbc TextEncoder.vb /out:bin/ROT13Converter.dll /t:library Alternatively, use VB.NET to compile the dll. Imports SystemNamespace BRETTB 'Contains methods for encoding (but not encrypting!) text. Public Class TextEncoder 'Encodes text using the ROT13 algorithm Public Function ROT13Encode(InputText As String) As String Dim i As Integer Dim CurrentCharacter As Char Dim CurrentCharacterCode As Integer Dim EncodedText As String = "" 'Iterate through the length of the input parameter For i = 0 To InputText.Length - 1 'Convert the current character to a char CurrentCharacter = System.Convert.ToChar(InputText.Substring(i, 1)) 'Get the character code of the current character CurrentCharacterCode = Microsoft.VisualBasic.Asc(CurrentCharacter) 'Modify the character code of the character, - this 'so that "a" becomes "n", "z" becomes "m", "N" becomes "Y" and so on If CurrentCharacterCode >= 97 And CurrentCharacterCode <= 109 Then CurrentCharacterCode = CurrentCharacterCode + 13 Else If CurrentCharacterCode >= 110 And CurrentCharacterCode <= 122 Then CurrentCharacterCode = CurrentCharacterCode - 13 Else If CurrentCharacterCode >= 65 And CurrentCharacterCode <= 77 Then CurrentCharacterCode = CurrentCharacterCode + 13 Else If CurrentCharacterCode >= 78 And CurrentCharacterCode <= 90 Then CurrentCharacterCode = CurrentCharacterCode - 13 End If End If End If 'Add the current character to the string to be returned End If EncodedText = EncodedText + Microsoft.VisualBasic.ChrW(CurrentCharacterCode) Next i Return EncodedText End Function 'ROT13Encode End Class 'TextEncoder End Namespace 'BRETTB Once the code has been compiled, the dll can be placed in the web application's /bin folder and used using a syntax like this: Dim TextEncodingObject As New TextEncoder()TextBox1.Text = TextEncodingObject.ROT13Encode(TextBox1.Text) The code samples contain an example of how to encode and decode text through a VB.NET web form using ROT13. ROT13 Encoding Using C#In this example, a ROT13 encoding/decoding function is created as a function named ROT13Encode within a class called TextEncoder. The code for the TextEncoder class is shown below. using System;namespace BRETTB { /// <summary> /// Contains methods for encoding (but not encrypting!) text. /// </summary> public class TextEncoder { /// <summary> /// Encodes text using the ROT13 algorithm /// </summary> /// <param name="InputText"></param> /// <returns></returns> public string ROT13Encode(string InputText) { int i; char CurrentCharacter; int CurrentCharacterCode; string EncodedText = ""; //Iterate through the length of the input parameter for (i = 0; i < InputText.Length; i++) { //Convert the current character to a char CurrentCharacter = System.Convert.ToChar(InputText.Substring(i, 1)); //Get the character code of the current character CurrentCharacterCode = (int) CurrentCharacter; //Modify the character code of the character, - this //so that "a" becomes "n", "z" becomes "m", "N" becomes "Y" and so on if (CurrentCharacterCode >= 97 && CurrentCharacterCode <= 109) { CurrentCharacterCode = CurrentCharacterCode + 13; } else if (CurrentCharacterCode >= 110 && CurrentCharacterCode <= 122) { CurrentCharacterCode = CurrentCharacterCode - 13; } else if (CurrentCharacterCode >= 65 && CurrentCharacterCode <= 77) { CurrentCharacterCode = CurrentCharacterCode + 13; } else if (CurrentCharacterCode >= 78 && CurrentCharacterCode <= 90) { CurrentCharacterCode = CurrentCharacterCode - 13; } //Add the current character to the string to be returned EncodedText = EncodedText + (char) CurrentCharacterCode; } return EncodedText; } } } Once the code has been compiled, the dll can be placed in the web application's /bin folder and used using a syntax like this: TextEncoder TextEncodingObject = new TextEncoder(); The code samples contain an example of how to encode and decode text through a C# web form using ROT13. Code Samples
Further Reading
Useful Development Tools
|
|
| Site Map | All content is © 1995 - 2008 Brett Burridge |