ziyaxian 发表于 2010-3-4 16:12:10

提问关于用_FileCountLines函数取TXT文件行数问题?已解决

本帖最后由 ziyaxian 于 2010-3-7 14:28 编辑

有一个TXT文件共三行:第一行为路径名:J:\abc第二行为文件名:aaa.xls   第三行为空行
这时用_FileCountLines函数取得的行数为2
但将文件名改为汉字:文件名.xls时,用_FileCountLines函数取得的行数为3,连空行也算了进去
怎么能使文件名为汉字时取得的行数也为2呢?

ddx13 发表于 2010-3-4 20:43:22

不要修改扩展名。

foboy 发表于 2010-3-4 20:51:24

自己修改一下那个UDF, 空行的不计数

ziyaxian 发表于 2010-3-5 08:34:30

原UDF空行是不计数的啊,不知道怎么改成汉字了空行就计数了,怎么改原UDF呢

afan 发表于 2010-3-5 11:40:17

LZ 什么版本的 AU,貌似没这问题

ziyaxian 发表于 2010-3-5 12:37:36

我用的是3.3.2.0

afan 发表于 2010-3-5 13:35:48

回复 6# ziyaxian


    你试下这个(3.3.5.x)版AU的此函数Func _FileCountLines($sFilePath)
        Local $hFile = FileOpen($sFilePath, $FO_READ)
        If $hFile = -1 Then Return SetError(1, 0, 0)
        Local $sFileContent = StringStripWS(FileRead($hFile), 2)
        FileClose($hFile)
        Local $aTmp
        If StringInStr($sFileContent, @LF) Then
                $aTmp = StringSplit(StringStripCR($sFileContent), @LF)
        ElseIf StringInStr($sFileContent, @CR) Then
                $aTmp = StringSplit($sFileContent, @CR)
        Else
                If StringLen($sFileContent) Then
                        Return 1
                Else
                        Return SetError(2, 0, 0)
                EndIf
        EndIf
        Return $aTmp
EndFunc   ;==>_FileCountLines

menfan 发表于 2010-3-6 18:05:12

貌似没有问题哦

ziyaxian 发表于 2010-3-7 14:27:59

下了一个新版本没事了,谢谢
页: [1]
查看完整版本: 提问关于用_FileCountLines函数取TXT文件行数问题?已解决