当前位置:首页 > 编程学习 > VB.NET中如何扩充字符串进行固定宽度显示

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

编程学习2007-05-3164620

  在VB.NET中,当你需要在控制台显示数据或准备好打印数据时,可能需要调整列宽以显示固定长度的数据。本文介绍了使用String对象的PadLeft方法和PadRight方法扩充字符串以进行固定宽度显示。


PadLeft和PadRight方法

     PadLeft和PadRight是字符串类的两个方法,可以分别使用它们在字符串的左边和右边填充空格。这两个方法多接受一个代表总长度的整型数,添加的空格数等于填充总长度减去字符串的当前长度。

     注意:在完成将字符串格式化为固定宽度显示的工作时,应该使用固定宽度的字体,例如Courier等,因为固定宽度的字符占有相同的宽度。否则,填充将会无效。

     程序员经常使用的另一个替代方法是使用tab字符来获得近似固定宽度显示格式。使用tabs的一个问题是,当某行长度比能够显示的长度长时,将会对tab进行扩展,这将导致各行不能很好对齐。


     下面代码我们为大家介绍了如何使用PadLeft和PadRight方法显示字符串。(为了运行该例子,我们添加了一个下拉列表ListBox1并将它的字体设置为固定宽度的字体)

Private Sub PadStrings()
    Dim i As Integer = 0
    Dim  strArrSeasons() AsString = {"Winter", "Spring", "Summer", "Fall"}
    Dim  strArrWeather() AsString = {"Cold", "Warm", "Hot", "Cool"}
    PadArray(strArrSeasons, True)
    PadArray(strArrWeather,  False)
    Dim strAll As String
     
    For i = 0 To strArrSeasons.length –  1
        ListBox1.Items.Add(strArrSeasons(i) & "  " &  strArrWeather(i))
    Next
End Sub
     
Private Sub PadArray(ByRef strArray() As String, ByVal bPadLeft As  Boolean)
    Dim i As Integer = 0
    Dim iMaxLength As Integer =  0
    Dim strItem As String
     
    For Each strItem In strArray
        If strItem.Length >  iMaxLength Then iMaxLength = strItem.Length
    Next
     
    For i = 0 To strArray.Length – 1
        If bPadLeft =  TrueThen
            strArray(i) =  strArray(i).PadLeft(iMaxLength)
        Else
            strArray(i) = strArray(i).PadRight(iMaxLength)
        End If
    Next
End Sub


图一显示了运行代码后的结果。

VB.NET中如何扩充字符串进行固定宽度显示  .NET 编程 第1张

图一


在本例中,我们定义了一个整型变量i和两个字符串数组:strArrSeasons和strArrWeather。每个数组赋初值为预定义好的值;然后,我们将每个数组传递给函数PadArray,并指定在字符串的左侧扩充。


扫描二维码推送至手机访问。

版权声明:本文由海阔天空发布,如需转载请注明出处。

本文链接:https://apull.net/html/20070531101.html

标签: .NET编程
分享给朋友:
返回列表

上一篇:密码的故事

下一篇:MD5加密VB版

相关文章

年纪偏大是否适合学习计算机

年纪偏大是否适合学习计算机

★年纪偏大是否适合学习计算机  Q:我本科不是学计算机专业。但是我对计算机的兴趣很大,想明年考北京大学计算机软件的研究生!请问像我这样快30岁的人了,才开始学习计算机是不是太晚了?  A:中国很多人相信程序员是吃青春饭的。 这主要是由中国软件水平发展的现状决定的。 1、大部分都做的是行业管理方面的软件,从计算机技术上说很快就可以进入。 2、很多公司没有管理和技术双重的提升机制,使得人们觉得做管理比做技术有前途,但是仍...

VB连接SQLServer数据库操作代码

VB连接SQLServer数据库操作代码

第一步,在ModConString模块中定义一系列变量'定义一个属性过程反映连接字符串Public Property Get conString() As Variant conString = "data source=.;initial catalog=Sims_four;user End Property'定义一个提供者反映数据库类型Public Property Get conProvide() As Variant co...

用VB类实现文件对话框

用VB类实现文件对话框

用VB类实现文件对话框'类名:ComDlg.cls '作用:文件打开保存对话框 ' ' ' 'By:Apull '2007-5-21 'http://www.apull.net Option Explicit Private Declare Function GetOpenFileName Lib "comdlg32.dll" Alias "GetOpenFileNameA" ( _ pOpenfil...

致面向对象技术初学者的一封公开信

致面向对象技术初学者的一封公开信

 致面向对象技术初学者的一封公开信 Alistair Cockburn 著(1996 年2 月),袁峰 译介绍 首先我要解释一下为什么会写这封公开信。这似乎已经成了一种习惯,但这个步骤还是需要的。过去6 年中, 我曾经无数次地在饭店、酒吧、旅店大厅等各种地方以同一种方式度过愉快而漫长的夜晚:和同样追求真理、光明和智慧的伙伴一起探讨面向对象的真谛。现在,我已经可以回答很多当年我遇到的问题。这些同样的问题也在困扰着我的一位新同事,在一家饭店里,我花了整整一个晚上和他讨...