2017-11-03 162 views
0
使用DoCmd.TransferText()時,我的SCHEMA.INI文件被忽略

我SCHEMA.INI文件被ignored.I得到相同的結果我是否在同一個文件夾中的文件scheme.ini我的標籤文件與否。所有的列結束在一個列中。我正在嘗試使用schema.ini,因爲我正在導入製表符分隔的文件。如果嘗試導入逗號分隔文件,結果非常有意義。從.net

所以我的假設是,schema.ini文件被忽略。

我正在使用的Microsoft Access 14.0 Object.Library一個.net程序訪問。

我使用這個命令從.NET:

Access.DoCmd.TransferText(Microsoft.Office.Interop.Access.AcTextTransferType.acImportDelim, , TableName, TabFile, HasFieldNames) 

這裏是我的schema.ini文件,這不是問題,因爲它是被完全忽視:

[impacts.txt] 
Format=TabDelimited 
ColNameHeader=True 
MaxScanRows=0 

線索?謝謝!

編輯: 我試圖用相同的結果訪問模塊內運行此。

我試着編輯註冊表來改變那裏的格式值。相同的結果。

回答

2

考慮操作查詢,追加或生成表,由於採用schema.ini文件可在文本文件中的Access查詢直接工作。以下假定.ini文件與文本文件位於同一目錄中。

INSERT INTO mytableName 
SELECT * FROM [text;Database=C:\Path\To\Text\File].[impacts.txt] 

SELECT * INTO newtableName FROM [text;Database=C:\Path\To\Text\File].[impacts.txt] 
+0

你是個天才!只有nitpick是你的版本要求該表已經存在於Access中。編輯你的答案,添加'Select * INTO impact from(SELECT * FROM [text; Database = D:\ EnvironProcessing \ Q3_2017 \ WI \ brrts]。[impact.txt])',我會將你標記爲答案。 –

+0

@BradMathews ...查詢可以使用append或make-table查詢...就像'DoCmd.TransferText'可以! – Parfait

+0

是的,我明白這一點,抱歉我缺乏清晰度。 –