Atlanta Custom Software Development 

 
   Search        Code/Page
 

User Login
Email

Password

 

Forgot the Password?
Services
» Web Development
» Maintenance
» Data Integration/BI
» Information Management
Programming
  Database
Automation
OS/Networking
Graphics
Links
Tools
» Regular Expr Tester
» Free Tools

StringToCode - Convert a string to the corresponding VB code

Total Hit ( 2228)

Rate this article:     Poor     Excellent 

 Submit Your Question/Comment about this article

Rating


 


Click here to copy the following block
' Put quotes around a string and double any embedded Chr$(34)
'
' convert all control characters into ControlChars.*** VB constants
' or CHR() functions
'
' This function is useful, for example, when you are writing a MsgBox wizard.
' Tipically, such a wizard would let the user enter a string in a multiline
' textbox control, and would later have to convert it into a quoted string in
' order to produce the actual MsgBox code. Just putting quotes around the
' string doesn't work, because you have to account for embedded quotes and
' control characters.

Function StringToCode(ByVal Source As String) As String

  Dim Index As Integer
  Dim result As New Text.StringBuilder()
  Dim openQuotes As Boolean
  Dim trailingAmpersand As Boolean

  ' empty string is a special case
  If Source Is Nothing OrElse Source.Length = 0 Then
    Return """"""
  End If

  For Index = 0 To Source.Length - 1
    Dim ch As Char = Source.Chars(Index)

    If Not Char.IsControl(ch) Then
      ' open the double quotes if necessary
      If openQuotes = False Then
        result.Append("""")
        openQuotes = True
      End If
      ' append the character
      result.Append(ch)
      ' double embedded quotes
      If ch = """" Then result.Append(ch)
      trailingAmpersand = False
    Else

      ' it is a control character
      ' close double quotes, if open
      If openQuotes Then
        result.Append(""" & ")
        openQuotes = False
      End If

      Select Case Asc(ch)
        Case 0
          result.Append("ControlChars.NullChar & ")
        Case 13
          result.Append("ControlChars.Cr & ")
        Case 10
          result.Append("ControlChars.Lf & ")
        Case 9
          result.Append("ControlChars.Tab & ")
        Case Else
          result.Append("Chr(")
          result.Append(Asc(ch).ToString)
          result.Append(") & ")
      End Select
      trailingAmpersand = True
    End If
  Next

  ' close open quotes
  If openQuotes Then
    result.Append("""")
  ElseIf trailingAmpersand Then
    result.Remove(result.Length - 3, 3)
  End If

  ' convert CR+LF to a single symbolic constant and return the result
  Return result.ToString.Replace("ControlChars.Cr & ControlChars.Lf", _
    "ControlChars.CrLf")

End Function


Submitted By : Nayan Patel  (Member Since : 5/26/2004 12:23:06 PM)

Job Description : He is the moderator of this site and currently working as an independent consultant. He works with VB.net/ASP.net, SQL Server and other MS technologies. He is MCSD.net, MCDBA and MCSE. In his free time he likes to watch funny movies and doing oil painting.
View all (893) submissions by this author  (Birth Date : 7/14/1981 )


Home   |  Comment   |  Contact Us   |  Privacy Policy   |  Terms & Conditions   |  BlogsZappySys

© 2008 BinaryWorld LLC. All rights reserved.