Модераторы: Akina
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Проблема с считыванием и записью в файл, Проблемка.Помогите 
:(
    Опции темы
Shoblin
Дата 14.8.2007, 14:05 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 11
Регистрация: 5.8.2007

Репутация: нет
Всего: нет



Возникла проблема: при считывании построчно файла, который записан самой программой, получаю разрывы между строками. Типы таких:

прпопао

папааапа

ыаыа

И так далее... Хотя при открытии файла все хорошо...

Куски из программы
Цитата

'Запись
Open "poc.txt" For Append As 1
        Print #1, TF1(0).Text + Chr(13) + Chr(10)
Close

Цитата

 Open "poc.txt" For Input As 1
        Do Until EOF(1)
            Line Input #1, TLst
            NLst = NLst + 1
            CombF2.AddItem TLst
        Loop
    Close

Что не так????
PM MAIL   Вверх
mihanik
Дата 14.8.2007, 15:12 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


-=Белый Медведь=-
****


Профиль
Группа: Комодератор
Сообщений: 4054
Регистрация: 24.4.2006
Где: г. Тверь

Репутация: 11
Всего: 109



Я тебе одну умную вещь скажу, только ты не обижайся!!!

Оператор print САМ, САМОСТОЯТЕЛЬНО в конце строки добавляет vbCrLf (т.е. Chr(13) + Chr(10))

Поэтому записывай так:
Код

'Запись
Open "poc.txt" For Append As 1
        Print #1, TF1(0).Text 
Close




--------------------
Программистами не рождаются, - это родовая травма...
user posted imageuser posted image
PM MAIL WWW ICQ   Вверх
Shoblin
Дата 14.8.2007, 16:02 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 11
Регистрация: 5.8.2007

Репутация: нет
Всего: нет



Спасибо тебе
PM MAIL   Вверх
JusTalionis
Дата 15.8.2007, 06:48 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 576
Регистрация: 11.7.2006

Репутация: 6
Всего: 17



Цитата(mihanik @  14.8.2007,  15:12 Найти цитируемый пост)
в конце строки добавляет vbCrLf 
 ... а если для какой-нибудь цели такое свойство неудобно, ставьте в конце ; (блокирует автоматическое добавление перевода строки).


PM MAIL   Вверх
RussianHero
Дата 15.8.2007, 07:54 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 88
Регистрация: 14.8.2007
Где: г. Балашиха, МО

Репутация: нет
Всего: нет



Прошу прощения за нубский вопрос, а что делает Chr(10)?
13 - это типа Ентер, это я знаю.. а Цшр(10) что делает?
Заранее спасибо.
PM MAIL WWW ICQ   Вверх
kapbepucm
Дата 15.8.2007, 08:58 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 993
Регистрация: 14.6.2007
Где: Латвия

Репутация: нет
Всего: 12



linefeed character

Это сообщение отредактировал(а) kapbepucm - 15.8.2007, 09:01


--------------------
(С) kapbepucm
PM MAIL Skype   Вверх
RussianHero
Дата 15.8.2007, 09:05 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 88
Регистрация: 14.8.2007
Где: г. Балашиха, МО

Репутация: нет
Всего: нет



А Ентер и перевод каретки на новую сторку не одно и то же?  smile 
PM MAIL WWW ICQ   Вверх
mihanik
Дата 15.8.2007, 09:13 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


-=Белый Медведь=-
****


Профиль
Группа: Комодератор
Сообщений: 4054
Регистрация: 24.4.2006
Где: г. Тверь

Репутация: 11
Всего: 109



10 - переход на одну строку вниз
13 - переход в начало текущей строки



--------------------
Программистами не рождаются, - это родовая травма...
user posted imageuser posted image
PM MAIL WWW ICQ   Вверх
JusTalionis
Дата 15.8.2007, 14:03 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 576
Регистрация: 11.7.2006

Репутация: 6
Всего: 17



Верно. В Виндах конец строки маркируется этими двумя байтами; еще со времен ДОС осталось.  (В отличие от мира юниксов, где маркируют только одним.)

Добавлено через 8 минут и 56 секунд
Цитата(RussianHero @  15.8.2007,  09:05 Найти цитируемый пост)
А Ентер и перевод каретки на новую сторку не одно и то же?
 Клавиша Enter выдает код 13, но в программе к нему добавляется еще код 10. Кстати, во времена XT-шек на клавиатурах была даже такая клавиша, LF называлась (а потом ее не стало).

PM MAIL   Вверх
Akina
Дата 15.8.2007, 23:07 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Советчик
****


Профиль
Группа: Модератор
Сообщений: 20581
Регистрация: 8.4.2004
Где: Зеленоград

Репутация: 34
Всего: 454



Цитата(JusTalionis @  15.8.2007,  15:03 Найти цитируемый пост)
В Виндах конец строки маркируется этими двумя байтами; еще со времен ДОС осталось.

Нет, со времен терминалов древних БЭСМ, и ДОС тут ни при чем - его еще в помине не было. Именно управление движением курсора по экрану и требует двух телодвижений для перевода его в начало новой строки.


--------------------
 О(б)суждение моих действий - в соответствующей теме, пожалуйста. Или в РМ. И высшая инстанция - Администрация форума.

PM MAIL WWW ICQ Jabber   Вверх
JusTalionis
Дата 16.8.2007, 11:36 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 576
Регистрация: 11.7.2006

Репутация: 6
Всего: 17



 smile Ну тогда уж - со времен механических пишущих машинок, у которых на клавиатуре было две клавиши: "перевод строки" и "возврат каретки" smile 

PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "VB6"
Akina

Запрещается!

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делиться вскрытыми компонентами

  • Литературу по VB обсуждаем здесь
  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы по реализации алгоритмов рассматриваются здесь
  • Используйте теги [code=vb][/code] для подсветки кода. Используйтe чекбокс "транслит" (возле кнопок кодов) если у Вас нет русских шрифтов.


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Akina.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | VB6 | Следующая тема »


 




[ Время генерации скрипта: 0.0534 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.