Извините, ничего не найдено.

Не расстраивайся! Лучше выпей чайку!
Регистрация
Справка
Календарь

Вернуться   forum.boolean.name > Программирование игр для компьютеров > Blitz3D

Ответ
 
Опции темы
Старый 02.04.2010, 22:46   #1
Hellfalcon
Нуждающийся
 
Регистрация: 13.01.2007
Сообщений: 88
Написано 2 полезных сообщений
(для 2 пользователей)
Считывание из файла чисел

Есть файл с числами. Как в блице считать эти числа и сохранить в массив?
(Offline)
 
Ответить с цитированием
Старый 02.04.2010, 22:54   #2
Reks888
Дэвелопер
 
Аватар для Reks888
 
Регистрация: 04.11.2009
Адрес: Украина, Днепропетровск
Сообщений: 1,480
Написано 662 полезных сообщений
(для 1,985 пользователей)
Ответ: Считывание из файла чисел

;===================================
;
ReadInt не использован
;из-за проблем блица с кодировкой
;чисел в блокноте
;===================================

Открыть файл для считывания
filein 
ReadFile("mydata.dat"
Считываем из файла длину массива как текст и переводим в число
DimLen
=Int(ReadString(filein)

Dim Highscore(DimLen)

;  
Считать лучшие результаты как строку из файла и пишем в массив
For i=0 to DimLen-1
HighScore
(i)=Int(ReadLine(infile))
Next

Закрыть файлкак  только считывание закончилось
CloseFile
filein 

Print 
"Рекорд  (HighScore), считанный из файла mydata.dat " 
For i=0 to DimLen-1
Print "Место N"+i+" - "+HighScore(i)
Next

WaitKey
()
End 
__________________
>type C:\MyProj\*
www.sypiac.weebly.com
>
(Offline)
 
Ответить с цитированием
Старый 02.04.2010, 23:24   #3
Tadeus
Троллота
 
Регистрация: 09.07.2007
Сообщений: 1,829
Написано 554 полезных сообщений
(для 1,772 пользователей)
Ответ: Считывание из файла чисел

Э, а что за несовместимость? Просто число пишется "напрямую", т.е. как 4 байта, а не как строка.
(Offline)
 
Ответить с цитированием
Старый 02.04.2010, 23:51   #4
Hellfalcon
Нуждающийся
 
Регистрация: 13.01.2007
Сообщений: 88
Написано 2 полезных сообщений
(для 2 пользователей)
Ответ: Считывание из файла чисел

выдает три раза ошибку Memory acces violation на
DimLen=Int(ReadString(filein))
У меня файл *.txt . Может из-за этого ?
Как тогда по-другому можно подсчитать количество строк?
(Offline)
 
Ответить с цитированием
Старый 02.04.2010, 23:56   #5
Tadeus
Троллота
 
Регистрация: 09.07.2007
Сообщений: 1,829
Написано 554 полезных сообщений
(для 1,772 пользователей)
Ответ: Считывание из файла чисел

Сообщение от Hellfalcon Посмотреть сообщение
выдает три раза ошибку Memory acces violation на
DimLen=Int(ReadString(filein))
У меня файл *.txt . Может из-за этого ?
Как тогда по-другому можно подсчитать количество строк?
А файл-то у тебя с правильным именем?
(Offline)
 
Ответить с цитированием
Старый 03.04.2010, 00:03   #6
Reks888
Дэвелопер
 
Аватар для Reks888
 
Регистрация: 04.11.2009
Адрес: Украина, Днепропетровск
Сообщений: 1,480
Написано 662 полезных сообщений
(для 1,985 пользователей)
Ответ: Считывание из файла чисел

Сообщение от Hellfalcon Посмотреть сообщение
Как тогда по-другому можно подсчитать количество строк?
i=0
Const VeryBigNumber=32767;Сюда подставить число которое заведомо больше ;максимально возможного числа строк

Dim Highscore
(VeryBigNumber)

While 
Not eof(filein)
Highscore(i)=Int(ReadLine(filein))
i=i+1
Wend 
либо
i=0

While Not eof(filein)
i=i+1
Wend

Dim Highscore
(i)
i=0

While Not eof(filein)
Highscore(i)=Int(ReadLine(filein))
i=i+1
Wend 
От расширения файла не зависит, можешь хоть *.exe читать
__________________
>type C:\MyProj\*
www.sypiac.weebly.com
>
(Offline)
 
Ответить с цитированием
Сообщение было полезно следующим пользователям:
Hellfalcon (03.04.2010)
Ответ


Опции темы

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

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


Часовой пояс GMT +4, время: 15:51.


vBulletin® Version 3.6.5.
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Перевод: zCarot
Style crйe par Allan - vBulletin-Ressources.com