以文本方式查看主题
- Foxtable(狐表) (http://foxtable.net/bbs/index.asp)
-- 专家坐堂 (http://foxtable.net/bbs/list.asp?boardid=2)
---- [求助] 导入文本的分列问题 (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=5061)
|
-- 作者:mr725
-- 发布时间:2009/11/20 11:08:00
-- [求助] 导入文本的分列问题
Dim ip as New
Importer ip.SourcePath = "c:\\Data\\"
\'指定目录 ip.SourceTableName = "订单"
\'指定要导入的文件“订单.txt” ip.NewTableName ="订单"
\'导入后的表名 ip.Format = "Delimited"
\'指定导入格式 \'\'这个好像都是以逗号来分列的,要以tab键分列或者不分列怎么来表达?? ip.Import()
|
-- 作者:狐狸爸爸
-- 发布时间:2009/11/20 11:21:00
--
我也不知道 先转换为Excel再导入吧
[此贴子已经被作者于2009-11-20 11:20:57编辑过]
|
-- 作者:mr725
-- 发布时间:2009/11/20 11:29:00
--
第一次学导入就碰钉子了~
那帮助中的: Format 指定导入格式,包括Access、Access2007、Excel、Excel2007、dBASE、Delimited、Fixed等格式 其中Delimited为符号分割的文本文件,Fixed为固定列宽的文本文件。
1、这里符号分割 怎么表达符号..或不使用符号
? 2、用Fixed 替换 Delimited 为何没有反应..?
|
-- 作者:狐狸爸爸
-- 发布时间:2009/11/20 11:52:00
--
例如用分号:
Format=Delimited(;)
用Tab
Format=TabDelimited
我没有测试过哦
[此贴子已经被作者于2009-11-20 11:53:24编辑过]
|
-- 作者:mr725
-- 发布时间:2009/11/20 12:17:00
--
刚试了试,没有任何反应~
ip.Format = "Delimited"
什么也不加,是以逗号来分列的~ 开始郁闷~
[此贴子已经被作者于2009-11-20 12:18:57编辑过]
|
-- 作者:狐狸爸爸
-- 发布时间:2009/11/20 12:23:00
--
看来只能用逗号的。
其实文本文件无所谓的,自己写几行代码,随便导出。
|
-- 作者:mr725
-- 发布时间:2009/11/20 12:36:00
--
只是想试着解决狐友的一个问题,先用代码将文本导入到狐表的一列即可,文本格式如下: -------------------------------------- @717,1
土地使用者名称:张三 土地坐落:西北3号 土地等级:2 宗地面积:120 建筑占地面积:100 地籍号:1022001 :
@717,2 土地使用者名称:李四 土地坐落:中路1号 土地等级:2 宗地面积:101.5 建筑占地面积:101.5 地籍号:1022002 :
@712,3 土地使用者名称:王五 土地坐落:东路1号 土地等级:2 宗地面积:103.6 建筑占地面积:101.2 地籍号:1022003 : -------------------------------------- 用代码: Dim ip as New Importer ip.SourcePath = "C:\\downloads\\" ip.SourceTableName = "1" ip.NewTableName ="导入txt" ip.Header = false ip.Format = "Delimited" \'指定导入格式 ip.Import()
可导入的总是分列的???结果 @717,1 这一行被按 逗号 分成两列了! 不爽啊~
此主题相关图片如下:未命名.jpg
[此贴子已经被作者于2009-11-20 12:40:57编辑过]
|
-- 作者:狐狸爸爸
-- 发布时间:2009/11/20 13:26:00
--
上面的文本应该逐行读取分割,然后添加到表中。
|
-- 作者:mr725
-- 发布时间:2009/11/20 13:36:00
--
以下是引用狐狸爸爸在2009-11-20 13:26:00的发言: 上面的文本应该逐行读取分割,然后添加到表中。
Dim s As string = FileSys.ReadAllText("C:\\downloads\\1.txt") Dim Values() As String = s.Split(chr(10)) tables("导入txta2").addnew(Values.length) for i as integer = 0 to Values.length-1 tables("导入txta2").rows(i)("F1") = Values(i) next
结果乱码了:::汉字怎么出来呢???
@717,1
?????????????:????
????????:????3??
??????:2
??????:120
??????????:100
?????:1022001
:
@717,2
?????????????:????
????????:??·1??
??????:2
??????:101.5
??????????:101.5
?????:1022002
:
@712,3
?????????????:????
????????:??·1??
??????:2
??????:103.6
??????????:101.2
?????:1022003
此主题相关图片如下:未命名1.jpg
[此贴子已经被作者于2009-11-20 13:36:36编辑过]
|