Web Robot View of http://www.brettb.com/ROT13EncodingWithASPNet.asp

Page Item Value
Title ROT13 Encoding in ASP.NET using C# and VB.NET
Description Demonstrates how ASP.NET (VB.NET and C#) can be used to encode and decode strings using ROT13.
Keywords rot13, asp.net, c#, csharp, vb, vb.net, visual basic.net, encoding, tutorial, example
Robots Meta Tag  
Page Content   HOME | ABOUT ME | BIOTECHNOLOGY | ARTICLES | TOOLS | GALLERY | CONTACT Search: Go DEVELOPER TOOLS
ASP Doc Tool
ASP.NET Doc Tool
SQL Doc Tool
Index Server Companion
The Website Utility TECHNICAL ARTICLES
ASP
ASP.NET
JavaScript
Transact SQL

PHOTO GALLERIES
Canon EOS 300D Samples
Red Arrows 2004
Living Coasts
Web Page Backgrounds
More Galleries...

NEW STUFF
SQL Color Coder
Canon EOS 300D Samples
The Website Utility
Search Engine Optimisation
Build an ASP Search Engine
My Tropical Fishtank
Savings Other New Stuff...

POPULAR STUFF
Regular Expressions
ASP Documentation Tool
Index Server ASP
JavaScript Ad Rotator

LINKS
Business Website
ASPAlliance Articles

Home ASP.NET Articles

ROT13 Encoding in ASP.NET using C# and VB.NET

This 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.NET 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. 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 System

Namespace 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();
TextBox1.Text = TextEncodingObject.ROT13Encode(TextBox1.Text);

The code samples contain an example of how to encode and decode text through a C# web form using ROT13.

Code Samples Download the code associated with this article (35 K ZIP file). Further Reading ROT13 Encoding using ASP and JavaScript . The C# source code was converted to VB.NET with the help of the C# to VB.NET Translator . The color coded, syntax highlighted code displayed in this article was created using the ASP.NET Documentation Tool . The .NET Framework contains an abundance of encryption classes - look for them in System.Security.Cryptography . Useful Development Tools ASP Documentation Tool Automatically creates developer documentation for ASP 2.0 and 3.0 web applications written in VBScript and JScript. Documentation for Microsoft Access, SQL Server 7/2000 databases and Visual Basic 6.0 components associated with the web application can also be incorporated into the reports. Documentation is created in HTML, HTML Help and plain text formats. View Sample Output (HTML Help format).
View Sample Output (HTML Format).
Download Trial Version (5.2Mb ZIP file).
ASP.NET Documentation Tool Automatically creates developer documentation for ASP.NET web applications written in C# or VB.NET. Documentation for SQL Server 7/2000 databases and C#/VB.NET components associated with the web application can also be incorporated into the reports. Documentation is created in HTML, HTML Help and plain text formats. View Sample Output (HTML Help format).
View Sample Output (HTML Format).
Download Trial Version (2.9Mb ZIP file).
SQL Documentation Tool The SQL Documentation Tool creates technical documentation for Microsoft SQL Server 7.0 and 2000 databases. Technical documentation is created in HTML and HTML Help formats. The HTML Help format documentation is fully searchable and cross referenced. The SQL Documentation Tool documents SQL Server Tables, Views, Stored Procedures, Triggers and Table Relationships. View Sample Output (HTML Help format).
View Sample Output (HTML Format).
Download Trial Version (10.3Mb ZIP file).
Index Server Companion The Index Server Companion is a Windows application that extends the functionality of Microsoft Index Server so that it is able to index content from remote websites and also from ODBC databases. As such it can be used as a low cost alternative to Site Server 3.0 Search. View Product Documentation (119K ZIP file).
Try Sample Search Facility .
Download Trial Version (1.7Mb ZIP file).
The Website Utility The Website Utility examines websites for errors and areas that need to be optimised for search engines by using a built in web crawling engine. Errors checked for include broken or moved hyperlinks, missing page titles and missing meta tags. It also generates HTML for use in creating website site maps (table of contents pages - like this one ), and is able to create both client-side JavaScript Search Engines and server-side ASP Search Engines for a website. View Sample Output (HTML Help format).
View Sample Output (HTML Format).
Download Trial Version (3Mb ZIP file).

Site Map

All content is © 1995 - 2006 Brett Burridge

Image Alt Tags Brettb.Com
Microsoft Certified Professional
View Sample Output (HTML Help format)
View Sample Output (HTML Format)
Download Trial Version
View Sample Output (HTML Help format)
View Sample Output (HTML Format)
Download Trial Version
View Sample Output (HTML Help format)
View Sample Output (HTML Format)
Download Trial Version
View Product Documentation
Try Sample Search Facility
Download Trial Version
View Sample Output (HTML Help format)
View Sample Output (HTML Format)
Download Trial Version
ASP Documentation Tool - Free Trial Available!
1000MB and 40GB for $7.95 a month!
Internal Links http://www.brettb.com/redirector.asp (13 links in this page) [ Robot View of this URL ]
http://www.brettb.com/Default.asp (3 links in this page) [ Robot View of this URL ]
http://www.brettb.com/ASPDocumentationTool.asp (2 links in this page) [ Robot View of this URL ]
http://www.brettb.com/rot13_encoding_with_asp.asp (2 links in this page) [ Robot View of this URL ]
http://www.brettb.com/ROT13EncodingWithASPNet.asp (2 links in this page) [ Robot View of this URL ]
http://www.brettb.com/DeveloperTools.asp (2 links in this page) [ Robot View of this URL ]
http://www.brettb.com/TheWebsiteUtility.asp (2 links in this page) [ Robot View of this URL ]
http://www.brettb.com/ASP.NETArticles.asp (2 links in this page) [ Robot View of this URL ]
http://www.brettb.com/technicalwriting.asp [ Robot View of this URL ]
http://www.brettb.com/JavaScriptArticles.asp [ Robot View of this URL ]
http://www.brettb.com/Website_Search_Engine_Optimisation.asp [ Robot View of this URL ]
http://www.brettb.com/SearchResults.asp [ Robot View of this URL ]
http://www.brettb.com/js_banner_ad_rotator.asp [ Robot View of this URL ]
http://www.brettb.com/web.asp [ Robot View of this URL ]
http://www.brettb.com/CanonEOS300D_Gallery1.asp [ Robot View of this URL ]
http://www.brettb.com/BuildingAnASPSearchEngine.asp [ Robot View of this URL ]
http://www.brettb.com/backgrounds.asp [ Robot View of this URL ]
http://www.brettb.com/toc.asp [ Robot View of this URL ]
http://www.brettb.com/VBScriptRegularExpressions.asp [ Robot View of this URL ]
http://www.brettb.com/Investments_ISAs.asp [ Robot View of this URL ]
http://www.brettb.com/TransactSQLColorCoder.asp [ Robot View of this URL ]
http://www.brettb.com/MyTropicalFishtank.asp [ Robot View of this URL ]
http://www.brettb.com/CanonEOS300D_Gallery3.asp [ Robot View of this URL ]
http://www.brettb.com/ASPWatchArticles.asp [ Robot View of this URL ]
http://www.brettb.com/Red_Arrows_2004.asp [ Robot View of this URL ]
http://www.brettb.com/Living_Coasts_Photos.asp [ Robot View of this URL ]
http://www.brettb.com/SQL_Help.asp [ Robot View of this URL ]
http://www.brettb.com/contact.asp [ Robot View of this URL ]
http://www.brettb.com/Biotechnology.asp [ Robot View of this URL ]
http://www.brettb.com/Gallery.asp [ Robot View of this URL ]
http://www.brettb.com/ASPNetDocumentationTool.asp [ Robot View of this URL ]
http://www.brettb.com/gallery.asp [ Robot View of this URL ]
http://www.brettb.com/what's_new.asp [ Robot View of this URL ]
http://www.brettb.com/IndexServerCompanion.asp [ Robot View of this URL ]
http://www.brettb.com/SearchingIndexServerWithASP.asp [ Robot View of this URL ]

Reporting Main Page

Report generated by The Website Utility 2.8