|
Не получается прочитать текстовик через 'ADODB.Recordset' не срабатывает разделитель | ☑ | ||
|---|---|---|---|---|
|
0
Shur1cIT
25.10.16
✎
14:53
|
Чтение идет без ошибок, но колонок нет скорее всего проблема с разделителем, в моём (случае таб) вот процедура,где ошибка?
в параметре Format=TabDelimited точно также как у microsoft написано https://msdn.microsoft.com/en-us/library/ms709353(v=vs.85).aspx Функция Прочитать(Папка, ИмяФайла, КолПолей) // Параметры: // "Папка" - путь к файлу без имени файла с завершающим слешем, // "ИмяФайла" - имя файла, // "КолПолей" - количество колонок (число). Текст = "[" + ИмяФайла + "] |ColNameHeader=False |Format=TabDelimited |TextDelimiter=none |CharacterSet=ANSI |"; Для ы = 1 По КолПолей Цикл Текст = Текст + "Col" + ы + "=Field" + ы + " Text" + Символы.ПС; КонецЦикла; ТекстДок = Новый ТекстовыйДокумент; ТекстДок.УстановитьТекст(Текст); ТекстДок.Записать(Папка + "Schema.ini"); objRec = Новый COMОбъект("ADODB.Recordset"); strQuery = "SELECT * FROM [" + ИмяФайла + "]"; strConn = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + Папка + ";Extended Properties=""text;"""; adOpenStatic = 3; adLockOptimistic = 3; adCmdText = 1; ТаблЗнач = Новый ТаблицаЗначений; Для ы = 1 По КолПолей Цикл ТаблЗнач.Колонки.Добавить(); КонецЦикла; objRec.Open(strQuery, strConn, adOpenStatic, adLockOptimistic, adCmdText); КолСтрок = objRec.RecordCount; Ном = 1; Пока Не objRec.EOF Цикл Если Ном % 500 = 0 Тогда Состояние(ИмяФайла + " " + Ном + " из " + КолСтрок); КонецЕсли; НовСтр = ТаблЗнач.Добавить(); Для i=0 По objRec.Fields.Count-1 Цикл НовСтр[i] = Строка(objRec.Fields(i).Value); КонецЦикла; objRec.MoveNext(); Ном = Ном + 1; КонецЦикла; objRec.Close(); Возврат ТаблЗнач; КонецФункции |
|||
|
1
Лефмихалыч
25.10.16
✎
15:00
|
TextDelimiter=none
и чо это колонок-то нет?.. |
|||
|
2
Shur1cIT
25.10.16
✎
15:21
|
(1) думал ято для таблици
поставил |ColNameHeader=False |Format=TabDelimited |TextDelimiter ="+Символы.Таб +" |CharacterSet=ANSI |"; тоже самое |
|||
|
3
МихаилМ
25.10.16
✎
15:23
|
а зачем adLockOptimistic ?
|
|||
|
4
Shur1cIT
25.10.16
✎
15:30
|
(3) прирост в скорости в момент чтения
|
|||
|
5
МихаилМ
25.10.16
✎
15:33
|
(4)
неужели быстрее adLockReadOnly |
|||
|
6
Shur1cIT
25.10.16
✎
15:36
|
(5) можно и так
в чем может быть проблема ? почему от разделитель в качестве Таб не хочет использовать? |
| Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |