VB中双引号问题请教高手

PrivateSubaddorg_Click()'菜单增加组'***************************************************Cal... Private Sub addorg_Click() '菜单增加组'***************************************************
Call open_close(resorg)
resorg.Open "select * from org order by id", con, adOpenDynamic, adLockOptimistic
Set Combo2.DataSource = resorg
resorg.MoveFirst
resorg.Find "id='new'"
If resorg.EOF = True And resorg.BOF = True Then
Set nod1 = Form1.TreeView1.Nodes.add("root", tvwChild, "r" & "new", "新建文件夹", 2)

resorg.AddNew
resorg(0).Value = "new"
resorg(1).Value = "新建文件夹"
resorg.Update
Exit Sub
End If

Dim i As Integer
i = 1
While True
resorg.MoveFirst
resorg.Find "id='new" & i & "'"
If resorg.EOF = True Or resorg.BOF = True Then
Set nod1 = Form1.TreeView1.Nodes.add("root", tvwChild, "r" & "new" & i, "新建文件夹(" & i & ")", 2)
resorg.AddNew '
resorg(0).Value = "new" & i '为什么这里给"i"加""不行
resorg(1).Value = "新建文件夹(" & i & ")"
'请问这里的i 为什么不能去掉双引号
它不是已经是整数了吗?
resorg.Update
Exit Sub
Else
i = i + 1
End If
Wend
deleteorg.Enabled = False
End Sub

请高手给我详细说说这个单引号 和 双引号 的用法
多谢!
展开
 我来答
百度网友2ca1c0f24
2007-12-12 · TA获得超过2036个赞
知道大有可为答主
回答量:4364
采纳率:0%
帮助的人:3436万
展开全部
resorg(0).Value = "new" & i
'为什么这里给"i"加""不行

"new" & i : "new"是字符串,i是变量,这个语句是一个简化语句,实际也可以这样:"new" & i & "",语句实际是一个字符串的后面增加一个变量的值,例如i=2,这个语句的结果是new2。
问题出现了,你不是说new是字符串,而i是整形变量,为什么能够这样处理呢?问的好!
在VB中,一般字符串和数字连接时,需要将数字转换成为字符串,例如"new" & i 应该是:"new" & Cstr(i),但是由于你的数据库字段本身就是字符串字段,VB经过判断,智能地进行了转换(况且前面的new已经是字符串了)。

解决了上面的疑问,下面的问题是不是也清楚了?
resorg(1).Value = "新建文件夹(" & i & ")"
'请问这里的i 为什么不能去掉双引号它不是已经是整数了吗?

在VB中很多地方存在智能判断的,当然为了查询清楚明了,很多编程者用显式语句,例如:"new" & Cstr(i) & ""。
VB妮可
2007-12-12 · TA获得超过3333个赞
知道大有可为答主
回答量:2574
采纳率:0%
帮助的人:0
展开全部
resorg(0).Value = "new" & i
这个i不能加,因为加了就会得到 字符串 newi了..变成了字符串叠加,而不想得到的new1, new2, new3等等的效果了.

resorg(1).Value = "新建文件夹(" & i & ")"
这里面的i仍然不能加的,你要看清楚,不要看错了,这句话是:

字符串"新建文件夹("
连接
变量i的值
再连接
字符串")"

一共是2对双引号, 是用来引住前后2个字符串的, 而i是没有引号的.
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友1c007c8cd
2007-12-12 · TA获得超过613个赞
知道小有建树答主
回答量:2292
采纳率:100%
帮助的人:1236万
展开全部
“” 这个在VB中是说话他是一个字符串
' ' 这个在VB中没得定义,他只出现在SQL语句中,也是用来说明他是一个字符串

如果VB要显示“” ,那么,就要连接打一次
如:msgbox "测试" 这个是没有""输出的
msgbox " ""测试"" " 这个是有“”输出,你自己试吧
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
Oo苍雪oO
2007-12-12 · TA获得超过289个赞
知道小有建树答主
回答量:272
采纳率:0%
帮助的人:0
展开全部
双引号引得是字符串
单引号里面是数据库某一字段的值
上面的I是变量不是字符串所以不能引用双引号!
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
七月风1257
2007-12-12 · TA获得超过188个赞
知道小有建树答主
回答量:213
采纳率:0%
帮助的人:0
展开全部
要输出双引号 请用
"""

msgbox """ 就是输出一个双引号
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(3)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式