2011-08-13 51 views
4

我GOOGLE了這一點,但VB.Net(2008)似乎並沒有允許插入格式化字符的String.Format(如\ t,\ r \ n。):在String.Format中插入格式化字符?

'BAD MessageBox.Show(String.Format("{0}{tab}{1}", "Foo", "Bar")) 
'BAD MessageBox.Show(String.Format("{0}\t{1}", "Foo", "Bar")) 
MessageBox.Show(String.Format("{0}" & vbTab & "{1}", "Foo", "Bar")) 

是否有更簡單方法來建立一個格式化的字符串,必須包含格式化字符?

回答

9

「易」大概是情人眼裏出西施,但這裏是一個不同的方式:

MessageBox.Show(String.Join(vbTab, {"Foo", "Bar"})) 

我也想出了這一點:

MessageBox.Show(String.Format("{0}\t{1}\t{2}", "Foo", "Bar", "Test").Replace("\t", vbTab)) 
2

使用vbTab工作正常(和vbCrLf等也)。

\ t \ n等爲FIOR C,不是VB

{標籤}是的SendKeys

我斷定一個代碼,你的第3行是(只)的工作方法,除非像這樣

MessageBox.Show("Foo" & vbTab & "Bar")

是可能的:它更容易我猜。

2

我想另一種選擇是:

String.Format("{1}{0}{2}{0}{3}{0}{4}", vbTab, "Foo", "Bar", "was", "here") 

不是最可讀的,但比& vbTab &更好。

相關問題