关于combobox中汉字的问题
combobox里面下拉的时候 显示的是所有省份城市的名字 比如浙江杭州,浙江温州,江西南昌,湖北武汉,黑龙江哈尔滨等。现在我想不考虑省份,只需要和城市的名字进行比较,看是否和表里面的城市名字对应的上,(表里面城市的名称只有如杭州,温州,哈尔滨这种的城市名称,不是浙江杭州这样的。)然后返回城市的ID。请问该怎么把combobox.text的字符串去掉省份名字后得到城市名称和表里面的城市名称进行比较,想同的话返回城市的ID。 --------------------编程问答-------------------- combobox 有一个value值的,value值对应到 数据库 某个值就好了 --------------------编程问答--------------------string str;--------------------编程问答-------------------- 方法一:
//这里将所有不是两个字省份的特例拿出来,然后其余的就Remove(0,2)就可以了
if(combobox.text.indexof("黑龙江") > -1)
{
str = combobox.text.Remove(0,3);
}
else
{
str = combobox.text.Remove(0,2);
}
//最后用str进行数据库查询比较
如下方式初始化 在combobox的Text里面放省份城市名称,在Value里面放城市名称
ListItem LI = new ListItem(省份城市, 城市);
DropList.Items.Add(LI);
方法二:
北京
天津
河北
山西
内蒙古
辽宁
吉林
黑龙江
上海
江苏
浙江
安徽
福建
江西
山东
河南
湖北
湖南
广东
广西
海南
四川
重庆
贵州
云南
易做图
陕西
甘肃
青海
宁夏
新疆
分析主要31大省份,只有“内蒙古”和“黑龙江”是三个字符,其他都是两个字符,直接判断然后截取就行了 --------------------编程问答-------------------- 一个SQL就可以了
select ID from 表名
where charindex(字段,combobox.text)>0
--------------------编程问答-------------------- 谢谢各位的方法
刚才我用了用这个
if (comboBox3.Text.EndsWith(m_dprovinces[i].Sname))
{
m_dclient1.idS = m_dprovinces[i].ID;
break;
}
好像也可以用 不过不知道这样会有什么问题吗。
--------------------编程问答-------------------- 楼上正解
CHARINDEX函数返回字符或者字符串在另一个字符串中的起始位置。 --------------------编程问答-------------------- 把it看做键值对……
补充:.NET技术 , C#