![]() |
|
Модераторы: bsa |
![]()
|
|
| yurk84 |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 65 Регистрация: 13.2.2009 Где: Москва Репутация: нет Всего: нет |
Здравствуйте! Подскажите, пожалуйста, как возможно считать число из файла. Как я понимаю, нужно для начала создать и открыть его в бинарном виде. А вот что дальше? Заранее благодарю.
|
|||
|
||||
| Ozerich |
|
|||
![]() Бывалый ![]() Профиль Группа: Участник Сообщений: 164 Регистрация: 2.8.2009 Где: Минск, Беларусь Репутация: 4 Всего: 5 |
--------------------
C++(STL) / DHTML(CSS) / Javascript / PHP Developer |
|||
|
||||
| ИванМ |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1260 Регистрация: 19.6.2006 Где: СПб Репутация: 3 Всего: 23 |
yurk84, все зависит от того, в каком виде записано число. Если в виде строки текста, то читать так как написал Ozerich. Если в виде бинарных данных, то через read().
|
|||
|
||||
| yurk84 |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 65 Регистрация: 13.2.2009 Где: Москва Репутация: нет Всего: нет |
А как правильно использовать функцию getw() для считывания числа из файла? Разве это не выход в моём случае? Поясните, пожалуйста. Заранее спасибо.
|
|||
|
||||
| djamshud |
|
||||
![]() Пердупержденный ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1655 Регистрация: 23.11.2009 Репутация: 4 Всего: 39 |
Just use fread, Luke! Добавлено через 38 секунд Или fstream, если для С++. -------------------- 'Cuz I never walk away from what I know is right Alice Cooper - Freedom |
||||
|
|||||
| yurk84 |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 65 Регистрация: 13.2.2009 Где: Москва Репутация: нет Всего: нет |
У меня следующий уточняющий вопрос: можно ли заранее занести какие-либо цифры в файл, чтобы при последующем считывании и печати в консоль они соответствовали друг другу? Почему-то функция getw() это не позволяет сделать.
|
|||
|
||||
| bsa |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 9185 Регистрация: 6.4.2006 Где: Москва, Россия Репутация: 85 Всего: 196 |
yurk84, getw она читает. Используй fwrite для записи и fread для чтения.
|
|||
|
||||
| Ozerich |
|
||||||
![]() Бывалый ![]() Профиль Группа: Участник Сообщений: 164 Регистрация: 2.8.2009 Где: Минск, Беларусь Репутация: 4 Всего: 5 |
Это как понимать? пишешь в файл как
читаешь так
--------------------
C++(STL) / DHTML(CSS) / Javascript / PHP Developer |
||||||
|
|||||||
| yurk84 |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 65 Регистрация: 13.2.2009 Где: Москва Репутация: нет Всего: нет |
Поясню на примере то, что я имел в виду в предыдущем своём сообщении: я создал текстовый файл и забил в столбик некоторое количество цифр. Далее в программе я открыл этот файл для чтения и с помощью функции getw() попытался считать эти цифры. Но на выходе (на консоле при печати) получил совсем другие значения. В чём тут может быть дело? Заранее спасибо.
|
|||
|
||||
| bsa |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 9185 Регистрация: 6.4.2006 Где: Москва, Россия Репутация: 85 Всего: 196 |
yurk84, в том, что для чтения ТЕКСТОВЫХ файлом, надо использовать текстовые функции. В частности fscanf. ИванМ тебя еще в самом начале спросил, какой файл ты читаешь. Вместо этого ты стал упирать на функцию getw, которая предназначена для чтения БИНАРНЫХ (двоичных) файлов.
|
|||
|
||||
| yurk84 |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 65 Регистрация: 13.2.2009 Где: Москва Репутация: нет Всего: нет |
Так я открывали и так и так (и как текстовый и как бинарный), только число записанное в файле и выведенное после считывания на консоль не совпадают! Отсюда вопрос: как сделать так, чтоб совпадали? Это сообщение отредактировал(а) yurk84 - 11.6.2010, 12:43 |
|||
|
||||
| djamshud |
|
|||
![]() Пердупержденный ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1655 Регистрация: 23.11.2009 Репутация: 4 Всего: 39 |
yurk84, прочитать из файла текст, и atoi его в число.
Добавлено через 33 секунды В общем то bsa уже все сказал, что не ясно? -------------------- 'Cuz I never walk away from what I know is right Alice Cooper - Freedom |
|||
|
||||
| yurk84 |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 65 Регистрация: 13.2.2009 Где: Москва Репутация: нет Всего: нет |
djamshud! А что такое atoi?
|
|||
|
||||
| bsa |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 9185 Регистрация: 6.4.2006 Где: Москва, Россия Репутация: 85 Всего: 196 |
yurk84, а google на что?!?
|
|||
|
||||
| xvr |
|
|||
|
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 7046 Регистрация: 28.8.2007 Где: Дублин, Ирландия Репутация: 35 Всего: 223 |
А еще я пытался отрыть .exe файл в текстовом режиме и прочесть, ну никак оттуда исходный С++ код не читается, видимо в fscanf бага Содержимое файла от того, как его открыли, не изменится. Если там были числа в тексте, то никакие getw эти числа в бинарный вид не переведут. |
|||
|
||||
![]()
|
| Правила форума "C/C++: Для новичков" | |
|
|
Запрещается! 1. Публиковать ссылки на вскрытые компоненты 2. Обсуждать взлом компонентов и делиться вскрытыми компонентами
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, JackYF, bsa. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | C/C++: Для новичков | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |