AXForum  
Вернуться   AXForum > Microsoft Dynamics AX > DAX: Программирование
All
Забыли пароль?
Зарегистрироваться Правила Справка Пользователи Сообщения за день Поиск

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 29.12.2003, 12:26   #1  
YVAS is offline
YVAS
1C
Аватар для YVAS
1C
 
265 / 10 (1) +
Регистрация: 31.07.2003
? Счетчик строк тексового файла
Выполняется процедура чтения текстового файла aSCIIFile.read(). aSCIIFile типа AsciiIo. Могу ли я отследить реальное положение курсора в файле.Не пойму как это сделать.
Старый 30.12.2003, 11:37   #2  
EVGL is offline
EVGL
Banned
Соотечественники
Лучший по профессии 2017
Лучший по профессии 2015
Лучший по профессии 2014
 
4,445 / 3001 (0) ++++++++++
Регистрация: 09.07.2002
Адрес: Parndorf, AT
  1. Первая (плохая) идея: прочитать файл два раза.
  2. Средствами WinAPI определить длину файла, а потом в коде отсчитывать байты.
Старый 30.12.2003, 13:01   #3  
mazzy is offline
mazzy
Участник
Аватар для mazzy
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
 
29,472 / 4494 (208) ++++++++++
Регистрация: 29.11.2001
Адрес: Москва
Записей в блоге: 10
положение курсора в текстовом файле?
хм...

по-моему, если вы хотите "реальное положение курсора", вам надо воспользоваться binaryIO и дружественным классом Binary.
посмотрите также на класс binData.

А можно спросить? Что такое вы делаете, что вам вдруг захотелось получить курсор при работе с текстовым файлом? Единственное, что мне приходит в голову, вы прогресс-бар делаете...
Старый 30.12.2003, 15:08   #4  
YVAS is offline
YVAS
1C
Аватар для YVAS
1C
 
265 / 10 (1) +
Регистрация: 31.07.2003
Отнюдь не прогресс-бар. А задача стоит такая: импорт в Ax из системы клиент-банк, которая представляет данные для внешних систем в формате .txt. Например:

Поле1 = 111
Поле2 = 222
Конзап
Поле1 = 333
Поле2 = 444

Я просто не пойму как оказаться в любой момент на определенной линии файла. Сечас я делаю так:
while (aSCIIFile.Status() == IO_Status::Ok) //
{
[line] = aSCIIFile.read();
}
Происходит то чтение по линиям, значит система каким то образом генерит переход на другую линию по read(). А вот как..????
Старый 30.12.2003, 15:13   #5  
YVAS is offline
YVAS
1C
Аватар для YVAS
1C
 
265 / 10 (1) +
Регистрация: 31.07.2003
Цитата:
Первая (плохая) идея: прочитать файл два раза.
Тоже не пойму как это сделать. Курсор устанавливается на начало файла при его открытии. Выходит, что надо открывать файла еще раз????
Старый 30.12.2003, 15:36   #6  
EVGL is offline
EVGL
Banned
Соотечественники
Лучший по профессии 2017
Лучший по профессии 2015
Лучший по профессии 2014
 
4,445 / 3001 (0) ++++++++++
Регистрация: 09.07.2002
Адрес: Parndorf, AT
Цитата:
Я просто не пойму как оказаться в любой момент на определенной линии файла.
Стоп, такая задача просто не решается, в Windows нет, кажется, такой функции. Тем более, в Аксапте. Как Аксапта переходит к новой строке - очевидно. Она читает символ за символом и ждет символа конца строки, как на уроках программирования в школе.

Совет: считайте весь файл в память в TextBuffer (системный класс Аксапта), а потом перемещайтесь по нему в любом направлении.
Старый 30.12.2003, 16:25   #7  
YVAS is offline
YVAS
1C
Аватар для YVAS
1C
 
265 / 10 (1) +
Регистрация: 31.07.2003
В принципе можно считать весь файл в контейнер и там перемещаться в каком угодно направлении.
Цитата:
Стоп, такая задача просто не решается, в Windows нет, кажется, такой функции
А какой же тогда функцией пользуется сама Ax для поиска символа конца строки.......
В общем ответ найдем. Спасибо большое.....
 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
Количество строк в Query Владимир Максимов DAX: Программирование 19 11.08.2014 18:27
Тормозит копирование строк в буфер обмена ivas DAX: Программирование 20 21.08.2007 15:05
Пользовательский генератор строк-перечислений...- 2: Доп.вкладка для SysQueryForm Gustav DAX: База знаний и проекты 1 04.05.2007 18:04
Возникла проблема с получением имени файла при создании своего канала вывода отчетов. oleg_kap DAX: Программирование 3 06.06.2006 14:12
Предельное количество строк в Report Владимир Максимов DAX: Программирование 1 22.12.2005 15:02

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход

Рейтинг@Mail.ru
Часовой пояс GMT +3, время: 23:07.