- Rem ==========================函数测试区=================
- @echo off
- set "str=haoren就是"
- call :GetStrLenAndStrB %str% strlen bytes
- echo %strlen% %bytes%
- Rem =====================================================
-
- pause>nul
- :GetStrLenAndStrB Str strlen bytes
- Rem '///////////////获取字符串长度、字节函数/////////////////////////////////////////////////////////
- Rem 'code by youxi01@bbs.bathome.net 适用于Winxp;
- Rem '===============使用方法===================================
- Rem '1、要调用本段函数,先将标签下:GetStrLenAndStrB所有内容拷贝
- Rem '到对应批处理的pause段下。
- Rem '2、参数解析:Str为要获取字节数的字符串,strlen用来保存字符串
- Rem '长度,bytes用来保存字节
- Rem '3、用法示例::GetStrLenAndStrB "hao人" strlen bytes
- Rem '则,strlen的结果就为:4,bytes中的结果即为:5
- Rem '4、注意:本函数不能识别全角半角;
- Rem '==========================================================
- set "var=%~1"
- for /l %%i in (0 1 200) do (
- setlocal enabledelayedexpansion
- set "var_=!var:~%%i,1!"
- if "!var_!"=="" goto :eof
- if !var_! gtr Z (endlocal & set /a %3+=2) else endlocal & set /a %3+=1
- set /a %2+=1
- )
复制代码
|