以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.com/bbs/index.asp)
--  专家坐堂  (http://foxtable.com/bbs/list.asp?boardid=2)
----  [求助]批量合并文本-运行错误  (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=62526)

--  作者:Gryvip
--  发布时间:2015/1/3 21:50:00
--  [求助]批量合并文本-运行错误
各位前辈,大家好,批量合并文本文件,弹出运行错误框  “从字符串“None”到类型“Double”的转换无效。”

附件里面有两个文件夹(正常文件及非常文件),两个文件夹的文件都是在同一个网站,同一种方式下载的,为何出错原因我不知道。

正常文件可以正常合并,非常文件弹出错误框,且内容无法合并。

现在我有两个想法,1.最好的就是非常文件也能够正常合并,2.其次就是正常文件正常合并,遇到非常文件禁止弹出错误框,继续合并正常文件。

请给位前辈不吝赐教,谢谢。

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:批量合并.zip



--  作者:Gryvip
--  发布时间:2015/1/4 11:28:00
--  
顶上去求解
--  作者:有点甜
--  发布时间:2015/1/4 11:53:00
--  
For Each File As String In Filesys.GetFiles(projectpath & "下载数据")
    If File.EndsWith(".txt") \'如果后缀名是mdb,说明此文件是access格式
        FileSys.WriteAllText(file, FileSys.ReadAllText(file,encoding.default).Replace("None", 0), False, encoding.default)
        Dim mg As New Merger
        mg.Format = "Delimited" \'指定格式为文本格式
        mg.SourcePath = FileSys.GetParentPath(file) \'指定要合并的数据文件,含路径
        mg.SourceTableName = FileSys.GetName(file).SubString(0,6) \'指定要合并的文件,无需扩展名
        mg.DataTableName = "历史数据" \'指定接收合并数据的数据表的名称
        mg.Merge()
        \'Filesys.DeleteFile(File) \'合并后删除文件
    End If
Next

--  作者:Gryvip
--  发布时间:2015/1/4 13:14:00
--  
谢谢甜版,完全正确,达到了最好的要求。下面的语句请求给予注解:

FileSys.WriteAllText(file, FileSys.ReadAllText(file,encoding.default).Replace("None", 0), False, encoding.default)

--  作者:有点甜
--  发布时间:2015/1/4 13:27:00
--  

 参考 http://www.foxtable.com/help/topics/0331.htm

 


--  作者:Gryvip
--  发布时间:2015/1/4 14:52:00
--  
好的,谢谢甜版