VB.NET中如何擴充字串進行固定寬度顯示

來源:互聯網
上載者:User

在VB.NET中,當你需要在控制台顯示資料或準備好列印資料時,可能需要調整列寬以顯示固定長度的資料。本文介紹了使用String對象的PadLeft方法和PadRight方法擴充字串以進行固定寬度顯示。

PadLeft和PadRight方法

PadLeft和PadRight是字串類的兩個方法,可以分別使用它們在字串的左邊和右邊填充空格。這兩個方法多接受一個代表總長度的整型數,添加的空格數等於填充總長度減去字串的當前長度。

注意:在完成將字串格式化為固定寬度顯示的工作時,應該使用固定寬度的字型,例如Courier等,因為固定寬度的字元佔有相同的寬度。否則,填充將會無效。

程式員經常使用的另一個替代方法是使用tab字元來獲得近似固定寬度顯示格式。使用tabs的一個問題是,當某行長度比能夠顯示的長度長時,將會對tab進行擴充,這將導致各行不能很好對齊。

列表A中,我們為大家介紹了如何使用PadLeft和PadRight方法顯示字串。(為了運行該例子,我們添加了一個下拉式清單ListBox1並將它的字型設定為固定寬度的字型)圖1顯示了運行列表A中的代碼後的結果。

在本例中,我們定義了一個整型變數i和兩個字串數組:strArrSeasons和strArrWeather。每個數組賦初值為預定義好的值;然後,我們將每個數組傳遞給函數PadArray,並指定在字串的左側擴充。

Code:
  1. Private Sub PadStrings()   
  2.   
  3.   
  4.         Dim i As Integer = 0   
  5.         Dim strArrSeasons() AsString = {"Winter", "Spring", "Summer", "Fall"}   
  6.         Dim strArrWeather() AsString = {"Cold", "Warm", "Hot", "Cool"}   
  7.   
  8.   
  9.         PadArray(strArrSeasons, True)   
  10.         PadArray(strArrWeather, False)   
  11.   
  12.   
  13.         Dim strAll As String  
  14.         For i = 0 To strArrSeasons.length – 1   
  15.             ListBox1.Items.Add(strArrSeasons(i) & "  " & strArrWeather(i))   
  16.         Next  
  17.   
  18.   
  19.   
  20. End Sub  
  21.   
  22.   
  23.   
  24. Private Sub PadArray(ByRef strArray() As String, ByVal bPadLeft As Boolean)   
  25.   
  26.   
  27.         Dim i As Integer = 0   
  28.         Dim iMaxLength As Integer = 0   
  29.         Dim strItem As String  
  30.   
  31.   
  32.         For Each strItem In strArray   
  33.             If strItem.Length > iMaxLength Then iMaxLength = strItem.Length   
  34.         Next  
  35.   
  36.   
  37.         For i = 0 To strArray.Length – 1   
  38.             If bPadLeft = TrueThen   
  39.                 strArray(i) = strArray(i).PadLeft(iMaxLength)   
  40.             Else  
  41.                 strArray(i) = strArray(i).PadRight(iMaxLength)   
  42.             End If  
  43.         Next  
  44.   
  45.   
  46.   
  47. End Sub  

 

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.