当文件名含有中文时,不能直接用LeftStr(FileName, Length(FileName - 4))或者用Pos来定位"."的位置来获取。因为中文一个字符相当与两个英文字符。这样截取往往还是把整个FileName都截下来了。
应当使用Copy函数,如下:
TmpFileLength := Pos(extFile, FileName); TmpFileName := Copy(FileName, 1, TmpFileLength-1);
FileName为AA.txt之类,如果是包含path,可以先用ExtractFileName截取包含后缀的文件名。