string 类型长度不够怎么办?也就是说存不下我给出的字符串的长度,
代码如下:
var
ls_condition:String;
begin ls_condition := '
@ C/L@70075 ; @ C/L@70076 ; @ CHA/T@001 ; @ CHA/T@002 ; @@1 ; @@20001 ; @@20002 ; @CMF@70061 ; @CMF@70062 ; @COC@70057 ; @COC@70058 ; AmoldHeiko@@00214 ; BarlManfred@@00213 ; BenMander@@33001 ; ChristianHunkler@@30073 ; DaanVan Hoyweghen@@30005 ; DamianCummins@@00121 ; DieterSack@@33004 ; DominicVanoppen@@01589 ; DriesMichael@@00255 ; FelskeAndreas@@00110 ; Hans-ChristianMarxen@@01634 ; JoergSchlecht@@00269 ; LiebischRainer-Andreas@@00117 ; LucGuns@ @00212 ; ManfredJilg@@33003 ; MoonBeumSheen@@0368 ; NeilBrodie@@33002 ; PeterMichael Lorz@@340001 ; Rodriguez-PerezFrancisco@@00604 ; RolandKrokosinki@@00216 ; SchulikMichael@@00171 ; Van DeMaele Filip@@00913 ; Van HoyweghenPaul@@00097 ; YBS²ÆÎñ¿ØÖƲ¿SF@SF@70069 ; YBS²ÆÎñ¿ØÖƲ¿SF@SF@70070 ; YBSÉú²ú²¿ST@ST@70065 ; YBSÉú²ú²¿ST@ST@70066 ; YBSÊг¡ÏúÊÛ²¿SM@SM@70067 ; YBSÊг¡ÏúÊÛ²¿SM@SM@70068 ; YBS×ܾ­Àí°ì¹«ÊÒSG@SG@70063 ; YBS×ܾ­Àí°ì¹«ÊÒSG@SG@70064 ; °²·å@An Feng@00379 ; °²Á¢»³@An Lihuai@00576 ; °²È«¡¢»·±£¡¢¹¤³Ì¡¢Î¬ÐÞ²¿@CT@70020 ; °²È«¡¢»·±£¡¢½¡¿µ²¿@CTS@70025 ; °²È«¡
';提示信息:
One or more lines were too long and having been truncated各位帮我想想办法, 有没有比string 型更长的类型呢,我这个也不能拆开来,
谢谢大家,是不是编译器有个什么设置要设定一下呢?
代码如下:
var
ls_condition:String;
begin ls_condition := '
@ C/L@70075 ; @ C/L@70076 ; @ CHA/T@001 ; @ CHA/T@002 ; @@1 ; @@20001 ; @@20002 ; @CMF@70061 ; @CMF@70062 ; @COC@70057 ; @COC@70058 ; AmoldHeiko@@00214 ; BarlManfred@@00213 ; BenMander@@33001 ; ChristianHunkler@@30073 ; DaanVan Hoyweghen@@30005 ; DamianCummins@@00121 ; DieterSack@@33004 ; DominicVanoppen@@01589 ; DriesMichael@@00255 ; FelskeAndreas@@00110 ; Hans-ChristianMarxen@@01634 ; JoergSchlecht@@00269 ; LiebischRainer-Andreas@@00117 ; LucGuns@ @00212 ; ManfredJilg@@33003 ; MoonBeumSheen@@0368 ; NeilBrodie@@33002 ; PeterMichael Lorz@@340001 ; Rodriguez-PerezFrancisco@@00604 ; RolandKrokosinki@@00216 ; SchulikMichael@@00171 ; Van DeMaele Filip@@00913 ; Van HoyweghenPaul@@00097 ; YBS²ÆÎñ¿ØÖƲ¿SF@SF@70069 ; YBS²ÆÎñ¿ØÖƲ¿SF@SF@70070 ; YBSÉú²ú²¿ST@ST@70065 ; YBSÉú²ú²¿ST@ST@70066 ; YBSÊг¡ÏúÊÛ²¿SM@SM@70067 ; YBSÊг¡ÏúÊÛ²¿SM@SM@70068 ; YBS×ܾ­Àí°ì¹«ÊÒSG@SG@70063 ; YBS×ܾ­Àí°ì¹«ÊÒSG@SG@70064 ; °²·å@An Feng@00379 ; °²Á¢»³@An Lihuai@00576 ; °²È«¡¢»·±£¡¢¹¤³Ì¡¢Î¬ÐÞ²¿@CT@70020 ; °²È«¡¢»·±£¡¢½¡¿µ²¿@CTS@70025 ; °²È«¡
';提示信息:
One or more lines were too long and having been truncated各位帮我想想办法, 有没有比string 型更长的类型呢,我这个也不能拆开来,
谢谢大家,是不是编译器有个什么设置要设定一下呢?
s1:ansistring; // 4GB
s2:string;//根据编译开关可能是 ansistring,可能是 shortstring
楼上的朋友, 您遇到这种问题是怎么解决的呢 ?
你遇到这种问题是怎么解决的呢 ?
另外检查一下 project->options->compiler huge strings 是否选上, 这个是为向前兼容用, 去掉string 就用的是 shortstring, 默认是 AnsiString
LZ的写法不正确, 按comanche(太可怕)的方法, 每换一行用+号连接起来。 ls_condition := '@ C/L@70075 ; @ C/L@70076 ; @ CHA/T@001 ; @ CHA/T@002 ; @@1 ; ' +
'@@20001 ; @@20002 ; @CMF@70061 ; @CMF@70062 ; @COC@70057 ; @COC@70058 ; ‘ +
'AmoldHeiko@@00214 ; BarlManfred@@00213 ; BenMander@@33001 ; ' +
'ChristianHunkler@@30073 ; DaanVan Hoyweghen@@30005 ; DamianCummins@@00121 ; ' +
'DieterSack@@33004 ; DominicVanoppen@@01589 ; DriesMichael@@00255 ; ' +......'²È«¡';
每换一行用+号连接起来,最后再提取参与运算的时候,还会自动把截断字符串的啊, delphi 编译器不让写那么长的常量 这个存储过程的参数也不接手数组的啊 该怎么办呢 ?
呜呜。
从其他地方复制来的这段字符串想直接粘贴到Delphi源程序中了事。
结果当然是否定的,这样干是行不通的。如果不想处理这段字符串,可以考虑将经放在资源文件中,程序运行后从资源中读出来而不是固定写在源代码中。
ls_condition :=
' (''70075'',''70076'',''001'',''002'',''1'',''20001'',''20002'',''70061'',''70062'',''70057'',''70058'',''00214'',''00213'',''33001'', ' +
' ''30073'',''30005'',''00121'',''33004'',''01589'',''00255'',''00110'',''01634'',''00269'',''00117'',''00212'',''33003'',''0368'', ' +
' ''33002'',''340001'',''00604'',''00216'',''00171'',''00913'',''00097'',''70069'',''70070'',''70065'',''70066'',''70067'', ' +
' ''70068'',''70063'',''70064'',''00379'',''00576'',''70020'',''70025'',''70026'',''70071'',''70072'',''00368'',''00793'',''00983'', ' +
' ''01769'',''01080'',''01221'',''01737'',''00673'',''01326'',''01054'',''00852'',''01538'',''01073'',''01510'',''01331'',''01676'', ' +
' ''00765'',''01102'',''00094'',''01062'',''01024'',''01181'',''01248'',''00890'',''70039'',''70040'',''70037'',''70038'',''70059'', ' +
' ''70060'',''70085'',''70086'',''01349'',''00016'',''01530'',''70003'',''70004'',''70005'',''70006'',''70009'',''70010'',''00405'', ' +
' ''01502'',''00532'',''0218'',''01311'',''00615'',''01417'',''01509'',''00475'',''00883'',''00961'',''00261'',''00568'',''00095'', ' +
' ''00730'',''01007'',''00699'',''0288'',''01482'',''00698'',''0163'',''0290'',''01239'',''01765'',''01032'',''0291'',''01212'',''01650'', ' +
' ''01660'',''00434'',''10'',''0344'',''00682'',''01442'',''0282'',''00849'',''01174'',''0206'',''01399'',''00172'',''00933'',''0138'', ' +
' ''00633'',''01309'',''01005'',''01459'',''1459'',''0225'',''01357'',''00939'',''00881'',''01726'',''01513'',''00577'',''00782'',''0132'', ' +
' ''00598'',''00602'',''00804'',''01031'',''00734'',''0271'',''00181'',''01524'',''01770'',''01160'',''00766'',''0095'',''01754'',''00871'', ' +
' ''01725'',''00955'',''01758'',''00134'',''01265'',''01089'',''00433'',''01708'',''01639'',''01544'',''01134'',''00522'',''00617'',''00775'', ' +
' ''01570'',''00527'',''00737'',''01365'',''1011383'',''00282'',''00664'',''01310'',''00265'',''00543'',''01308'',''01460'',''01059'',''0080'', ' +
' ''01197'',''00853'',''00702'',''01117'',''00757'',''00049'',''01789'',''00440'',''01606'',''00947'',''01565'',''00228'',''01285'',''00614'', ' +
' ''01541'',''00603'',''0365'',''01222'',''01656'',''00959'',''01563'',''01192'',''00483'',''01246'',''00646'',''01303'',''00050'',''01353'', ' +
' ''00029'',''0054'',''3033'',''01730'',''00274'',''01787'',''00557'',''0091'',''00865'',''01483'',''00281'',''01774'',''01141'',''00487'', ' +
' ''00925'',''00550'',''00670'',''01196'',''01484'',''01671'',''01330'',''3013'',''01562'',''01232'',''00656'',''00872'',''01658'',''01451'', ' +
' ''00479'',''00008'',''01390'',''3001'',''00671'',''0353'',''00191'',''01550'',''01194'',''00909'',''00569'',''01038'',''0213'',''01464'',''00083'', ' +
' ''01636'',''01784'',''01039'',''01207'',''01474'',''01352'',''00887'',''3007'',''01573'',''00193'',''00701'',''01714'',''01058'',''01605'',''01149'', ' +
' ''00870'',''01227'',''01036'',''01075'',''01476'',''01567'',''70082'',''01642'',''00506'',''01379'',''00485'',''01044'',''01696'',''01242'',''00958'', ' +
' ''01525'',''0307'',''01293'',''70043'',''70044'',''70045'',''70046'',''70047'',''70048'',''70041'',''70042'',''70055'',''70056'',''70053'',''70054'', ' +
' ''01072'',''01412'',''0255'',''01040'',''00570'',''00222'',''01603'',''00723'',''0097'',''01688'',''01319'',''00756'',''00851'',''00838'',''01009'', ' +
' ''00760'',''01184'',''01422'',''01559'',''01341'',''01022'',''01761'',''00414'',''30004'',''00441'',''01290'',''00106'',''00531'',''00085'',''0215'', ' +
' ''01767'',''01307'',''01115'',''01546'',''00712'',''00064'',''0219'',''01576'',''01507'',''00331'',''00948'',''01323'',''00762'',''0251'',''0119'', ' +
' ''01200'',''00463'',''00857'',''00736'',''01607'',''01277'',''00975'',''3019'',''01325'',''0184'',''00996'',''01333'',''00138'',''01640'',''00854'', ' +
' ''00392'',''01060'',''3023'',''01132'',''00015'',''00818'',''00659'',''00784'',''00936'',''00830'',''0297'',''00356'',''0128'',''00862'',''01287'', ' +
' ''00897'',''01780'',''00394'',''00586'',''00413'',''00057'',''00326'',''00425'',''01597'',''01128'',''00492'',''01438'',''01329'',''00624'',''00610'', ' +
' ''3002'',''00945'',''00609'',''00652'',''01654'',''01745'',''70021'',''70022'',''70084'',''70081'',''01503'',''0277'',''01602'',''01713'',''0079'', ' +
' ''01463'',''00874'',''00477'',''00104'',''30020'',''01740'',''00779'',''01542'',''01096'',''01376'',''01182'',''00842'',''00904'',''00992'',''00155'', ' +
' ''30034'',''00937'',''00260'',''00635'',''01295'',''0318'',''01699'',''30100'',''01267'',''00991'',''00812'',''00665'',''01574'',''00209'',''01131'', ' +
' ''3032'',''01771'',''01033'',''00827'',''00749'',''01140'',''106002'',''0330'',''00367'',''01733'',''01154'',''01624'',''00781'',''01487'',''0317'', ' +
' ''01731'',''01601'',''00330'',''00855'',''00343'',''01692'',''01651'',''01046'',''01155'',''00687'',''01001'',''01299'',''0256'',''00601'',''00846'', ' +
' ''01517'',''00426'',''01588'',''01340'',''01668'',''00894'',''30019'',''01615'',''01252'',''0147'',''00389'',''70031'',''70032'',''01018'',''0235'', ' +
' ''00690'',''01235'',''01599'',''00683'',''00654'',''00835'',''00739'',''0195'',''0175'',''00098'',''00733'',''01724'',''00680'',''0367'',''00466'', ' +
' ''01153'',''00534'',''01427'',''01426'',''70077'',''70007'',''70008'',''01'',''02'',''00986'',''70029'',''70030'',''70073'',''70074'',''01078'', ' +
' ''00802'',''01481'',''01635'',''01675'',''00481'',''01636'',''01637'',''01638'',''01639'',''01640'') ' ;赋值的时候没有错误,但是当我想用 ls_condition 来参与运算的时候就发现,付给ls_condition的内容后面很长一段没有了,
我的程序代码如下:
1: // 员工姓名 从 emp表中取得 len(emp.ssno) < 9 的胸卡号
begin
if (combo_czf.Text='In') or (combo_czf.Text='Not In') then
begin
check_rowcount:=0;
for i:=0 to (chkb_val.Items.Count-1) do
begin
if chkb_val.Checked[i] then
begin
if check_rowcount=0 then
begin
show_val:=chkb_val.Items.Strings[i];
vararray:=getsplit(chkb_val.Items.Strings[i],'@',1);
temp_val:='''' + vararray[2] + '''';
Inc(check_rowcount);
end
else
begin
show_val:=show_val+' ; '+chkb_val.Items.Strings[i];
vararray:=getsplit(chkb_val.Items.Strings[i],'@',1);
temp_val:=temp_val+','''+vararray[2] + '''';
end;
end; end; temp_val:=' ('+temp_val+') ';
temp_field:='badgeview.ssno';
end也就是我这个地方赋给 temp_val 的值,是一段一段的加起来的啊,
本人是delphi新手,用的不熟,请多多包涵,问题很急的啊,后天就要给用户上线了, 我头都大了, 哪位大哥知道怎么解决一定告诉我啊!
解决了另开帖子给分都行, 小弟泣血求助!
msn: [email protected]