仅比较字符串的最后三个字符

时间:2017-05-10 11:29:14

标签: vb.net

我正在编写一个程序,用于创建新文件夹并将旧文件夹移动到存档位置。 我需要能够比较文件夹路径的最后三位数,看它是否为“999”,例如一个文件夹将被称为“1950-1999”,这将需要一个新的父文件夹。

到目前为止

代码:

Dim stringreader As String
Dim path As List(Of String)

Private Sub Archive_Load(sender As Object, e As EventArgs) Handles MyBase.Load
    'Loads a text file at the given location, to read to.
    fileReader = My.Computer.FileSystem.OpenTextFileReader("C:\Data\Test\Foldercreation.txt")
    'Set stringreader as the read line from the file
    stringreader = fileReader.ReadLine()

    path = System.IO.Directory.GetDirectories(stringreader).ToList
    path.Sort()
    foldtoarchtxt.Text = path(0)

    'closes the file
    fileReader.Close()

正如您所看到的,我已经获得了文件夹路径并将其存储在列表中(显示给用户以及文本输出)。

我只是不知道如何让VB.NET始终查看右侧的最后三位数字。一个注意事项,这将达到100000's,甚至1000000,即100950-100999,因此它不能基于左边的位置。

2 个答案:

答案 0 :(得分:1)

考虑使用String.Substring

  

从此实例中检索子字符串。子字符串从指定的字符位置开始,并继续到字符串的末尾。

If path(0).Substring(path(0).Length - 3)) = "999" Then
    ...
End If

举个例子:

Dim s As String = "100950-100999"

Debug.WriteLine(s.Substring(s.Length - 3))

输出:

  

999

答案 1 :(得分:0)

您可以使用Strings.Right(string, n)获取n的最后string个字符:

  

返回一个字符串右侧包含指定字符数的字符串。