InstallShield内部函数全集十-字符串函数(中文版)
13  字符串函数
  字符串函数提供理字符串量和文字的功能。字符串函数与C言函数相似。返回也遵守C言的定。
CopyBytes
从一个字符串中拷指定字数到另一个。
GetDir
从一个路径名或全限定文件名中驱动标识
字符串处理函数 如果是a展示bGetDisk
从一个路径名或全限定文件名中索磁盘驱动标识
NumToStr
将一个数字转换为一个字符串。
ParsePath
从一个路径中驱动器,路径,文件名或展名。
StrCompare
将一个字符串和另一个比
StrFind
在另一个字符串中一个字符串。
StrGetTokens
基于指定定界符从一个字符串中得到一个令牌。
StrLength
返回一个字符串中的字数。
StrLengthChars
返回一个字符串中的字符数。
StrRemoveLastSlash
除一个路径字符串中的最后的反斜杠。
StrSub
从一个字符串中返回一个子串。
StrToLower
转换字符串中的所有字母字符小写。
StrToNum
转换字符串一个数字。
StrToUpper
转换字符串中的所有字母字符大写。
13.1  CopyBytes
法:CopyBytes (svDest, nIndexDest, svSrc, nIndexSrc, nCount);
明:CopyBytes函数从一个字符串中拷指定的字数到另一个字符串。你可以在源和目字符串中指定偏移下
参数:
svDest
指定目字符串。
nIndexDest
指定在目字符串中的偏移下始点),从个位置始插入些字。字符串的第一个字是在位置0
svSrc
指定源字符串。不要传递一个大小大于256个字符的自动调整大小的字符串。而应该用一个式大小声明字符串。nIndexSrc
指定源字符串的偏移下始点),从个位置始拷贝这些字。字符串的第一个字是在位置0
nCount
指定你要从svSrcsvDest的字数。该值不大于svSrc-1的大小。例如,如果svSrc被声明大小512它最大字符串511),则传递给nCount511或更少。
返回
0CopyBytes成功地从一个字符串拷指定数目的字到另一个字符串。
< 0CopyBytes没有能拷贝这些字
注解:
当你工作在二制文件CopyBytes有用。
13.2  GetDir
法:GetDir (szPath, svDir);
明:GetDir函数从由szPath指定的全限定路径或文件名中驱动器指示符,并在参数svDir返回路径或文件名的余。路径名必包含一个驱动器指示符。它可以是一个UNC(通用算机)路径。
在下面的例子中,全限定路径C:\WindowssvDir返回\Windows
  GetDir("C:\\Windows", svDir);
在下一个例子中,UNC路径\\TheServer\TheSharedDevice\ProgramssvDir返回\Programs
  GetDir("\\\\TheServer\\TheSharedDevice\\Programs", svDir);
参数:
szPath
指定包含一个驱动器指示符的路径。
svDir
返回没有驱动器指示符的路径。如果szPath是一个UNC路径,GetDir将返回没有服器名和共享设备名的路径。
返回
0:表明函数成功返回没有驱动器指示符的路径名。
<0:表明函数未能返回没有驱动器指示符的路径名。
13.3  GetDisk
法:GetDisk (szPath, svDisk);
明:GetDisk函数从由szPath指定的全限定路径或文件名中析取磁盘驱动器指示符。
参数:
szPath
指定一个包含一个驱动器指示符的全限定路径或文件名。如果不包含一个驱动器指示符,GetDisk将失传递给szPath可以是一个UNC路径。
svDisk
返回驱动器指示符(包含冒号)。如果szPath是一个UNC路径,GetDisk以”\\\共享设备”格式返回服器名和共享设备名。
返回
0:表明函数成功返回驱动器指示符。
< 0:表明函数未能返回驱动器指示符。
13.4  NumToStr
法:NumToStr (svString, nValue);
明:NumToStr函数将一个数字转换为一个字符串。
参数:
svString
返回nValue的字符串等价(等效字符串)。
nValue
指定要转换为一个字符串的数字。
返回
0:表明函数成功将数字转换为一个字符串。
< 0:表明函数未能将数字转换为一个字符串。
13.5  ParsePath
法:ParsePath (svReturnString, szPath, nOperation);
明:ParsePath函数索一个存在路径的指定部分。函数可工作于任何有效路径,包括短路径,路径和UNC路径,它可能包含或不包含一个具体文件名。下面是可以用函数分
析的一些路径本:
\Path1\
Filename

\Path1\Path2\Filename
D:
D:\
\\Server Name\Share Name\Share Directory
其它任何合法DOS路径。
参数:
svReturnString
返回参数szPath中的路径由参数nOperation所指定的部分。
szPath
指定要分析的路径。当指定一个不包含一个文件名的路径,你必在把它传递给ParsePath之前在路径尾添加一个反斜杠;否路径的最后部分会被解释为一个文件名。
nOperation
指定返回路径的哪个元素。在参数位置传递下列常量之一:
DIRECTORY:表明必svReturnString返回路径中去除磁盘驱动器字符和文件名。当该选项使用在一个UNC路径ParsePath返回没有服器和共享设备名的路径,并且没有文件名(可能被指定)。例如,UNC路径\\TheServer\TheSharedDevice\svReturnString返回\TheApp\
DISK:表明必svReturnString返回磁盘驱动器指示符(驱动器字符后随一个冒号)。当该选项使用在一个UNC路径ParsePath返回服器名和共享设备名。例如,UNC路径\\TheServer\TheSharedDevice\svReturnString返回\\TheServer\TheSharedDevice
EXTENSION_ONLY:表明必svReturnString返回文件展名。它不包括句点。
FILENAME:表明必svReturnString返回完整的文件名(也就是,包括它的文件展名)。
FILENAME_ONLY:表明必svReturnString返回文件名(也就是,不包括它的文件展名)。
PATH:表明必svReturnString返回路径中去除文件名。该选项DIRECTORY不同,因为驱动器指示符(如果在szPath中被指定)包括在返回路径中。当szPath指定一个UNC路径,服器名和共享设备名被包括在返回路径中。例如,UNC路径\\TheServer\TheSharedDevice\svReturnString返回\\TheServer\TheSharedDevice\TheApp\
返回
0:表明函数成功分析路径字符串。
< 0:表明函数未能分析路径字符串。
13.6  StrCompare
法:StrCompare (szStringA, szStringB);
明:StrCompare函数比两个字符串。比不区分大小写。
参数:
szStringA
指定要比的第一个字符串。
szStringB
指定要比的第二个字符串。
返回
< 0:表明szStringA的字符串的小于szStringB的字符串的
= 0:表明两个字符串相等。
> 0:表明szStringA的字符串的大于szStringB的字符串的
注解:
·StrCompare函数比两个字符串,通过检验每个字符串中的第一个字符,然后个字符串中的第二个字符,以次推,直到它到一个不相等的字符或到达了字符串尾。
·你选择言的驱动程序确定哪个字符串大或字符串相等。如果你不使用一个驱动程序,Windows使用一个内部函数。于一个双字字符集(DBCS)版本的Windows函数可以比两个DBCS字符串。
13.7  StrFind
法:StrFind (szString, szFindMe);
明:StrFind函数确定传递给参数szFindMe的字符串能否在传递给参数szString的字符串中到。如果szFindMe szString 中到,StrFind返回szFindMe的第一个字符在 szString
的位置。注意 szString 中第一个字符的位置是0函数不区分大小写并且只可以用来到szFindMe szString中首次出
下面的例子中,StrFind将返回13
  nStartPos = StrFind("Scripting is fun","fun");
如果只需要一个TRUEFALSE的返回来指示一个字符串是否包含另一个字符串,(也就是,如果子串的位置是不重要的),使用字符串操作符(%),如下所示:
  if (szString % szFindMe) then ...
if句中可以被解析的布表达式中,你可以只使用字符串操作符。你不能在repeat句或while句中使用它。
参数:
szString
指定要的字符串。
szFindMe
指定要在szString的字符串。
返回
X:如果szString包含szFindMeXszFindMe中第一个字符的数位置。SzString中第一个字符是在位置0
< 0:表明szString不包含szFineMe
13.8  StrGetTokens
法:StrGetTokens (listID, szString, szDelimiterSet);
明:StrGetTokens函数从szString指定的字符串中析取子串(称令牌)并且把它放置到listID指定的列表中。SzString中的子串必被由szDelimiterSet指定的一个或多个字符分隔(相互分隔)。
    例如,如果你StrGetTokens,字符串"One;Two;Three;Four;Five"第二个参数,";"第三个参数,"One", "Two", "Three", "Four", "Five"五个字符串将被返回到listID。使用列表函数,如ListGetFirstString ListGetNextString访问列表中的个令牌。
    如果szString中的第一个字符与szDelimiterSet中的一个字符匹配,一个空字符串将被插入列表的第一个元素。同,如果szString中的最后一个字符与szDelimiterSet中的一个字符匹配,一个空字符串将被插入列表的最后一个元素。
参数:
listID
返回令牌列表。由listID标识的字符串列表必过对ListCreate用而初始化。
szString
指定要被分析的字符串。
szDelimiterSet
指定一个或多个分隔符的集合。个分隔符是一个字符(1)。如果你在参数传递一个空字符串,函数以空字符分隔符来。当你使用GetProfString函数有用。
当一个空格被指定分隔符,StrGetTokens连续的空格理作一个独的分隔符。
返回
0:表明函数成功分隔字符串并把令牌(token)插入到指定列表中。
< 0:表明函数未能分隔字符串并把令牌插入到指定列表中。
13.9  StrLength
法:StrLength (szString);
明:使用StrLength函数得到一个字符串中的字数。确定一个字符串中的字符数,使用StrLengthChars
参数:
szString
指定要确定其大小的字符串。
返回
XX是字符串中的字数。
< 0:表明函数未能确定字符串中的字数。
13.10  StrLengthChars
法:StrLengthChars (szString);
明:使用StrLengthChars函数得到一个字符串中的字符数。确定一个字符串中的字数,使用StrLength
参数:
szString
指定要确定其大小的字符串。
返回
XX是字符串中的字符数。
< 0:表明函数未能确定字符串中的字符数。
13.11  StrRemoveLastSlash
法:StrRemoveLastSlash (svPath);
明:StrRemoveLastSlash函数从一个路径明中尾反斜杠。
参数:
svPath
指定一个字符串,其是一个路径明;返回没有尾反斜杠的路径。注意如果路径不包含一个反斜杠,它不作修改就被返回。
返回
0:表明函数成功尾反斜杠或路径不包含一个尾反斜杠。
< 0:表明函数未能尾反斜杠。
注解:
·StrRemoveLastSlashAskPath ParsePath返回的路径剪裁掉尾反斜杠提供了一个便利的途径。因它的目的是生一个有效路径名,StrRemoveLastSlash不从一个根目录说明中除反斜杠,如"A:\" "C:\"这样做可将一个有效路径名转换到一个驱动明(标识)。
你是否需要在任何情况下剪裁掉一个路径的尾反斜杠,可参考下面的脚本片段。
    AskPath("", "", svPath);
    if (StrLength(svPath) = 3)
      && (svPath[1] = ":")
      && (svPath[2] = "\\") then
      svTempString = svPath;
      StrSub(svPath,svTempString,0,2);
    else
      StrRemoveLastSlash(svPath);
    endif;
13.12  StrSub
法:StrSub (svSubStr, szString, nStart, nLength);
明: StrSub函数拷szString指定的字符串的部分,从nStart指定的位置始。参数nLength指定要拷的字符数。
参数:
svSubStr
返回从szString的子串。
szString
指定要从中拷子串的字符串。
nStart
指定一个szString中的偏移量来标识要被拷的第一个字符。注意szString中的第一个字符的位置是0。如果传递给nStart等于或大于szString度,在svSubStr返回一个空字符串。
nLength
指定从szString的字符数。如果该值指定了多于nStartszString尾之的字符数,在svSubStr返回从nStart到字符串尾的所有字符。
返回
XX等于svSubStr的字符数。
13.13  StrToLower
法:StrToLower (svTarget, szSource);
明:StrToLower函数将一个字符串中的所有字母转换为小写。函数不影响非字母字符。
参数:
svTarget
返回szSource中的字符串,其所有字符均已转换为小写。
szSource
指定均要转换为小写字符的字符串。
返回
0:表明函数成功修改了字符串的大小写。
< 0:表明函数未能修改了字符串的大小写。
13.14  StrToNum
法:StrToNum (nvVar, szString);
明:StrToNum函数将一个字符串转换为一个数字,与C函数atol()相似。它检查svString,从位置0的字符始,在字符串中继续直到它到达字符串尾或遇到一个不在"0".."9"内的一个字符。(字符串中的第一个字符可能是一个加号或减号。)将出下列程:
如果字符串中的所有字符在"0".."9"中,由字符串代表的数字赋给nvVar
如果字符串以一个或多个"0".."9"内的字符始但也包含一个或多个非数字字符,将出的第一个非数字字符的左的所有字符赋给nvVar。例如,如果szString "-123ABC456", nvResult将是 –123
如果字符串的第一个字符不在"0".."9"内并且不是一个加号或减号,函数失
如果字符串的第一个字符是一个加号或减号,并且第二个字符不在"0".."9"内,函数失
参数:
nvVar
返回从szString的字符串生成的数字。
szString
指定要转换为一个数字的字符串。
返回
0:表明函数成功将字符串转换为
< 0:表明函数未能将字符串转换为
13.15  StrToUpper
法:StrToUpper (svTarget, szSource);
明:StrToUpper函数将一个字符串中的所有字母转换为大写。函数不影响非字母字符。
参数:
svTarget
返回szSource中的字符串,其所有字符均已转换为大写。
szSource
指定均要转换为大写字符的字符串。
返回
0:表明函数成功修改了字符串的大小写。
< 0:表明函数未能修改了字符串的大小写。

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。