Форматирование текста не дает ожидаемых результатов - PullRequest
0 голосов
/ 04 октября 2011

Я пытаюсь сделать простой инструмент для форматирования кода SQL, чтобы я мог использовать его в VB.Когда я вставляю следующее:

USE master
CREATE DATABASE netGuest
GO

Я получаю ...

"USE master" & vbCrLf & _"
CREATE DATABASE netGuest" & vbCrLf & _"
GO" & vbCrLf & _"

Так что это почти работает.На самом деле единственное, что не работает, это то, что строки заканчиваются на ", а не на них.

Вот мой код:

Protected Sub btnConvert_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles btnConvert.Click
    If txtVB.Text IsNot Nothing Then : txtVB.Text = "" : End If

    Dim input() As String = txtSQL.Text.Split(vbCrLf)
    For i As Integer = 0 To UBound(input) - 1
        txtVB.Text = """" & input(i) & """ & vbCrLf & _"
    Next
End Sub

Заранее спасибо за помощь.1013 *

1 Ответ

1 голос
/ 04 октября 2011

Это потому, что разделение не вырезает vbCrLf, а оставляет его там.

Попробуйте это.

Dim textstring = "select *" & vbCrLf & "from table " & vbCrLf & "Go"
Dim output As String = ""
Dim input() As String = textstring.Split(CChar(ControlChars.CrLf))
output = """" & input(0) & """ & vbCrLf & _" & ControlChars.CrLf
For i As Integer = 1 To UBound(input)
    output &= """" & input(i).Substring(1) & """ & vbCrLf & _" & ControlChars.CrLf
Next
Console.WriteLine(output)
Console.ReadLine()
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...