sqltxt = String.Format("INSERT INTO mc_user (userid, Name, Password, power, Enabled) VALUES('{0}','{1}','{2}',{3},{4})", dwEnrollNumber, name, dwPassword, dwPrivilege, dwEnabled)
Debug.Print(sqltxt)
Debug.Print(dwEnrollNumber)
Debug.Print(dwName)
Debug.Print(dwPassword)
Debug.Print(dwPrivilege)
Debug.Print(dwEnabled)
Debug输出如下:
INSERT INTO mc_user (userid, Name, Password, power, Enabled) VALUES('10201','管理员10201
管理员159357
3
True
单个输出没问题,为什么格式化却输出一半内容,并且dwName.length也没无返回
------解决思路----------------------
如果你始终说不出dwName里到底存了什么
只说正常
那么别人也无从判断为什么会这样,只能靠各种猜
------解决思路----------------------
你那字符串从那里来的?通过Win32API取得的么?如果那估计是你的取返回串的代码有问题
按你现在这个搞法,只取\x00字符串前面的应该就是对的
var i= dwName.IndexOf('\x0');
if(i!=-1)
dwName=dwName.Substring(0,i);