VB.NET中如何扩充字符串进行固定宽度显示

前端之家收集整理的这篇文章主要介绍了VB.NET中如何扩充字符串进行固定宽度显示前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

在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. PrivateSubPadStrings() @H_403_37@
  2. @H_403_37@
  3. @H_403_37@
  4. DimiAsInteger=0 @H_403_37@
  5. DimstrArrSeasons()AsString={"Winter","Spring","Summer","Fall"} @H_403_37@
  6. DimstrArrWeather()AsString={"Cold","Warm","Hot","Cool"} @H_403_37@
  7. @H_403_37@
  8. @H_403_37@
  9. PadArray(strArrSeasons,True) @H_403_37@
  10. PadArray(strArrWeather,False) @H_403_37@
  11. @H_403_37@
  12. @H_403_37@
  13. DimstrAllAsString@H_403_37@
  14. Fori=0TostrArrSeasons.length–1 @H_403_37@
  15. ListBox1.Items.Add(strArrSeasons(i)&""&strArrWeather(i)) @H_403_37@
  16. Next@H_403_37@
  17. @H_403_37@
  18. @H_403_37@
  19. @H_403_37@
  20. EndSub@H_403_37@
  21. @H_403_37@
  22. @H_403_37@
  23. @H_403_37@
  24. PrivateSubPadArray(ByRefstrArray()AsString,ByValbPadLeftAsBoolean) @H_403_37@
  25. @H_403_37@
  26. @H_403_37@
  27. DimiAsInteger=0 @H_403_37@
  28. DimiMaxLengthAsInteger=0 @H_403_37@
  29. DimstrItemAsString@H_403_37@
  30. @H_403_37@
  31. @H_403_37@
  32. ForEachstrItemInstrArray @H_403_37@
  33. IfstrItem.Length>iMaxLengthTheniMaxLength=strItem.Length @H_403_37@
  34. Next@H_403_37@
  35. @H_403_37@
  36. @H_403_37@
  37. Fori=0TostrArray.Length–1 @H_403_37@
  38. IfbPadLeft=TrueThen @H_403_37@
  39. strArray(i)=strArray(i).PadLeft(iMaxLength) @H_403_37@
  40. Else@H_403_37@
  41. strArray(i)=strArray(i).PadRight(iMaxLength) @H_403_37@
  42. EndIf@H_403_37@
  43. Next@H_403_37@
  44. @H_403_37@
  45. @H_403_37@
  46. @H_403_37@
  47. EndSub@H_403_37@

猜你在找的VB相关文章