テキスト ファイルから文字列を読み取り、DBnames
パラメーター (アスタリスクで囲まれたもの) を . で始まる別の名前に変更するコードを作成していますNEWDB + textBox.Text
。私もに変更しDOMAINDB
たいDOMAIN + txtbox.Text
私の現在のコードは、を使用して特定の単語のみを検索しstring.StartsWith
ます。しかし、コンマ区切りに基づいて変更する必要がある値を読み取る方法を探しています。
ここに私の現在のダーティコードがあります:(多少は機能しますが、より動的にする方法を探しています)
CurrentFilePath = NextFilePath(FilePaths, FileEnum) 'defined in previous section
OriginalFileLines = File.ReadAllLines(CurrentFilePath) 'defined in previous section
NewFileLines.Clear()
Dim DataDB = "NEWDB" + txtbox.Text.ToUpper()
Dim DomainDB = "DOMAIN" + txtbox.Text.ToUpper()
Dim sb = New StringBuilder()
For Each line In OriginalFileLines
Dim arr = line.Split(",")
Dim NewLine As New StringBuilder()
' arr(6) = DataDB
' sb.AppendLine(String.Join(",", arr))
'Next
For Each word In arr
If word.StartsWith("DATADB") Then
NewLine.Append(",NEWDB" + txtOrgID.Text.ToUpper) 'Change "DATADB%" to "NEWDATADB{txtbox.txt}"
ElseIf word.Contains("*") Then
NewLine.Append(",*" + txtServerName.Text) 'Change "%*%" to "*{ServerName}"
Else
NewLine.Append(IIf(Array.IndexOf(arr, word) > 0, ",", "") + word) 'Comma if not first word
End If
Next
NewFileLines.Add(NewLine.ToString)
File.WriteAllLines(CurrentFilePath, NewFileLines.ToArray)
TextFile 内の実際の行:
SSA,SystemA,,YES,YES,*SERVERNAME,**DATADB**,Admin,Passw0rd!,,,MS-SQL
SSB,SystemB,,NO,YES,*SERVERNAME,**DOMAINDB**,Admin,Passw0rd!,,,MS-SQL
SSC,SystemC,,YES,YES,*SERVERNAME,**DOMAINDB**,Admin,Passw0rd!,,,MS-SQL