You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

在VB.NET中如何在Hashtable中根据指定ID查找并提取对应Name值

解决方案

要实现根据提取的ID查找对应的Name值,你可以按以下方式修改代码:

首先确保line变量已被正确赋值,然后提取ID并进行查找,同时建议增加存在性检查避免异常:

Sub Main()
    ' Create Hashtable instance.
    Dim table As Hashtable = New Hashtable

    table.Add("01", "John")
    table.Add("02", "Bob")
    table.Add("03", "Joe")
    table.Add("04", "Mary")

    ' 假设line已经被赋值为目标字符串
    Dim line As String = "XXXX01YYYY" ' 示例字符串,Substring(4,2)会得到"01"
    Dim targetId As String = line.Substring(4, 2)

    ' 检查Hashtable中是否存在该ID
    If table.ContainsKey(targetId) Then
        Dim nameValue As String = table(targetId).ToString()
        Console.WriteLine($"找到对应Name: {nameValue}")
        ' 这里可以根据需求使用nameValue变量做后续处理
    Else
        Console.WriteLine($"未找到ID为{targetId}的记录")
    End If
End Sub

关键点说明

  • 先通过line.Substring(4,2)提取目标ID,注意要保证line的长度至少为6,否则会抛出ArgumentOutOfRangeException,如果不确定line长度,建议先做长度检查。
  • 使用ContainsKey方法判断ID是否存在,避免直接取值时出现KeyNotFoundException。
  • 取值后通过.ToString()转换为字符串类型,因为Hashtable存储的是Object类型。

内容的提问来源于stack exchange,提问作者Martha

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.06 02:16:14