[英]VB.net Java Code Gen Placing unwanted Space
您好我正在嘗試制作一個VB.net應用程序,使我得到一些用於插件的Java代碼,我正在制作這是vb.net應用程序具有的代碼
Public Class Form1
Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
Dim s As String = ""
Dim i As Integer = 0
Dim X As Integer = Int(TextBox2.Text)
Dim Z As Integer = Int(TextBox3.Text)
Dim YDif As Integer = Int(TextBox4.Text)
Dim YStart As Integer = Int(TextBox5.Text)
Dim World As String = TextBox6.Text
Dim Building As String = TextBox1.Text
Dim Y As Integer = 0
'Diff * Floor + Start
'6 * 0 + start
Do Until i = NumericUpDown1.Value
Y = (YDif * i) + YStart
s = s + "LiftHandeler.Buildings.put(loc(""" + World + """," + Str(X) + "," + Str(Y) + "," + Str(Z) + "), """ + Building + """);" + vbNewLine
i = i + 1
Loop
i = 0
Do Until i = NumericUpDown1.Value
Y = (YDif * i) + YStart
s = s + "LiftHandeler.Floors.put(""" + Building + Str(i + 1) + """,loc(""" + World + """," + Str(X) + "," + Str(Y) + "," + Str(Z) + "));" + vbNewLine
i = i + 1
Loop
s = s + "LiftHandeler.FloorsAmt.put(""" + Building + """, " + Str(NumericUpDown1.Value) + ");"
My.Computer.Clipboard.SetText(s)
End Sub
End Class
輸出應為
LiftHandeler.Buildings.put(loc("world", 43, 22, 971), "Andrew");
LiftHandeler.Buildings.put(loc("world", 43, 26, 971), "Andrew");
LiftHandeler.Buildings.put(loc("world", 43, 30, 971), "Andrew");
LiftHandeler.Buildings.put(loc("world", 43, 34, 971), "Andrew");
LiftHandeler.Buildings.put(loc("world", 43, 38, 971), "Andrew");
LiftHandeler.Buildings.put(loc("world", 43, 42, 971), "Andrew");
LiftHandeler.Buildings.put(loc("world", 43, 46, 971), "Andrew");
LiftHandeler.Buildings.put(loc("world", 43, 50, 971), "Andrew");
LiftHandeler.Buildings.put(loc("world", 43, 54, 971), "Andrew");
LiftHandeler.Buildings.put(loc("world", 43, 58, 971), "Andrew");
LiftHandeler.Floors.put("Andrew1",loc("world", 43, 22, 971));
LiftHandeler.Floors.put("Andrew2",loc("world", 43, 26, 971));
LiftHandeler.Floors.put("Andrew3",loc("world", 43, 30, 971));
LiftHandeler.Floors.put("Andrew4",loc("world", 43, 34, 971));
LiftHandeler.Floors.put("Andrew5",loc("world", 43, 38, 971));
LiftHandeler.Floors.put("Andrew6",loc("world", 43, 42, 971));
LiftHandeler.Floors.put("Andrew7",loc("world", 43, 46, 971));
LiftHandeler.Floors.put("Andrew8",loc("world", 43, 50, 971));
LiftHandeler.Floors.put("Andrew9",loc("world", 43, 54, 971));
LiftHandeler.Floors.put("Andrew10",loc("world", 43, 58, 971));
LiftHandeler.FloorsAmt.put("Andrew", 10);
但是它正在生成的代碼輸出是
LiftHandeler.Buildings.put(loc("world", 43, 22, 971), "Andrew");
LiftHandeler.Buildings.put(loc("world", 43, 26, 971), "Andrew");
LiftHandeler.Buildings.put(loc("world", 43, 30, 971), "Andrew");
LiftHandeler.Buildings.put(loc("world", 43, 34, 971), "Andrew");
LiftHandeler.Buildings.put(loc("world", 43, 38, 971), "Andrew");
LiftHandeler.Buildings.put(loc("world", 43, 42, 971), "Andrew");
LiftHandeler.Buildings.put(loc("world", 43, 46, 971), "Andrew");
LiftHandeler.Buildings.put(loc("world", 43, 50, 971), "Andrew");
LiftHandeler.Buildings.put(loc("world", 43, 54, 971), "Andrew");
LiftHandeler.Buildings.put(loc("world", 43, 58, 971), "Andrew");
LiftHandeler.Floors.put("Andrew 1",loc("world", 43, 22, 971));
LiftHandeler.Floors.put("Andrew 2",loc("world", 43, 26, 971));
LiftHandeler.Floors.put("Andrew 3",loc("world", 43, 30, 971));
LiftHandeler.Floors.put("Andrew 4",loc("world", 43, 34, 971));
LiftHandeler.Floors.put("Andrew 5",loc("world", 43, 38, 971));
LiftHandeler.Floors.put("Andrew 6",loc("world", 43, 42, 971));
LiftHandeler.Floors.put("Andrew 7",loc("world", 43, 46, 971));
LiftHandeler.Floors.put("Andrew 8",loc("world", 43, 50, 971));
LiftHandeler.Floors.put("Andrew 9",loc("world", 43, 54, 971));
LiftHandeler.Floors.put("Andrew 10",loc("world", 43, 58, 971));
LiftHandeler.FloorsAmt.put("Andrew", 10);
在所有樓層上注意建築物名稱(Andrew)和樓層編號之后的多余空間。
通過替換來解決此問題
s = s + "LiftHandeler.Floors.put(""" + Building + Str(i + 1) + """,loc(""" + World + """," + Str(X) + "," + Str(Y) + "," + Str(Z) + "));" + vbNewLine
用
s = s + "LiftHandeler.Floors.put(""" + Building + "" + Str(i + 1).Replace(" ", "") + """,loc(""" + World + """," + Str(X) + "," + Str(Y) + "," +Str(Z) + "));" + vbNewLine
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.