0 / 0 / 0
Регистрация: 18.06.2013
Сообщений: 33
|
||||||
1 | ||||||
Cохранение очень большого массива в текстовый файл18.08.2014, 20:46. Показов 1199. Ответов 14
Метки нет (Все метки)
Помогите пожалуйста. Мне требуется сохранить карту в своей игре в текстовый файл. Класс карты:
0
|
18.08.2014, 20:46 | |
Ответы с готовыми решениями:
14
Создания ну очень большого массива Создание очень большого двумерного массива Тип данных для очень большого массива Вывод большого числа знаков после запятой в текстовый файл |
161 / 122 / 85
Регистрация: 16.10.2013
Сообщений: 1,738
|
|
18.08.2014, 20:55 | 2 |
Evgenii32rus, хм.. а чем вас обычная запись в файл не устраивает?
К примеру в двоичный затолкать...
0
|
104 / 98 / 40
Регистрация: 01.07.2012
Сообщений: 277
|
|
18.08.2014, 20:56 | 3 |
Evgenii32rus, мне кажется тут ничего особого не придумаешь, хранить как обычный массив. Если размер не постоянный, то первые числа в файле - размер массива.
0
|
693 / 303 / 99
Регистрация: 04.07.2014
Сообщений: 846
|
|
18.08.2014, 21:05 | 4 |
Сохранение больших массивов чисел в текстовый файл - плохая идея, особенно если это float/double. Мало того, что требуется много времени на преобразование числа в строку и обратно, так ещё тебе никто не гарантирует, что ты получишь тоже число. Для таких задач есть тот же BSON
Добавлено через 3 минуты З.Ы.: Нашёл в загашниках ссылочку http://leopard.in.ua/2013/10/1... n-formats/
0
|
0 / 0 / 0
Регистрация: 18.06.2013
Сообщений: 33
|
||||||
18.08.2014, 21:18 [ТС] | 5 | |||||
Я пытался использовать такую функцию:
0
|
104 / 98 / 40
Регистрация: 01.07.2012
Сообщений: 277
|
||||||||||||||||
18.08.2014, 21:45 | 6 | |||||||||||||||
А как организовывать логику: самостоятельно все прописывать или уже есть готовые библиотеки?
Добавлено через 6 минут
И чуть не забыл, открывайте файл один раз до начала всех циклов, а то мне кажется у вас он каждый раз заново создается и все прошлое содержимое стирается. Или уж открывайте в режиме "a", а не "w" Добавлено через 9 минут А вообще наверное вы хотели что-то вроде такого.
1
|
693 / 303 / 99
Регистрация: 04.07.2014
Сообщений: 846
|
|
18.08.2014, 21:59 | 7 |
И тут у тебя большой подводный камень. Размер int зависит от компилятора, ОС и её разрядности.
Поэтому предложенные выше библиотеки и более выгодны, т.к. решают часть очень важных проблем. Ну а если хочется именно текстовый файл, то используй stringstream, для оптимизации записи.
1
|
0 / 0 / 0
Регистрация: 18.06.2013
Сообщений: 33
|
||||||
19.08.2014, 19:29 [ТС] | 8 | |||||
Почему при выполнении этого кода возникает ошибка?
0
|
104 / 98 / 40
Регистрация: 01.07.2012
Сообщений: 277
|
|
19.08.2014, 20:00 | 9 |
Evgenii32rus, это похоже на выход за пределы массива, но так просто трудно сказать где это.
Попробуйте поймать на каких значениях [x][y][i][j][k] происходит вылет. Для начала во всех циклах можно поставить по 1, т.е. for(int i = 0; i < 1; i++) Добавлено через 1 минуту а вообще у вас наверно в файлах это видно, по крайней мере какой последний файл был создан.
1
|
1130 / 789 / 232
Регистрация: 12.04.2010
Сообщений: 2,012
|
||||||
19.08.2014, 20:46 | 10 | |||||
Evgenii32rus, если написать
Добавлено через 2 минуты Чтобы определить почему, стоит определить (с помощью отладчика), в какой строке возникает ошибка.
0
|
0 / 0 / 0
Регистрация: 18.06.2013
Сообщений: 33
|
||||||
19.08.2014, 20:52 [ТС] | 11 | |||||
Если передовать объект Map по ссылке, то ошибки не вознекает, но в файл записываются беспорядочные числа.
0
|
1130 / 789 / 232
Регистрация: 12.04.2010
Сообщений: 2,012
|
||||||
19.08.2014, 21:09 | 12 | |||||
Evgenii32rus, какой размер у Вас имеет переменная Map ? Evgenii32rus, понятно ли Вам, в чём отличие таких функций?
Evgenii32rus, как Вы определили, что числа - беспорядочные? Может быть, это и есть числа Map.regions[x][y].blockLayers[i][j][k]).
0
|
34 / 34 / 8
Регистрация: 06.04.2014
Сообщений: 189
|
|
19.08.2014, 23:46 | 13 |
А можно как-то memcpy всего объекта "сделать" в бинарный файл?
0
|
20.08.2014, 07:46 | 14 |
0
|
0 / 0 / 0
Регистрация: 18.06.2013
Сообщений: 33
|
||||||
20.08.2014, 21:07 [ТС] | 15 | |||||
Этот код работает правильно:
0
|
20.08.2014, 21:07 | |
20.08.2014, 21:07 | |
Помогаю со студенческими работами здесь
15
Cохранение каталога в файл Arduino (Processing). Cохранение в файл Cохранение введенных данных в файл Задача с использованием структуры «текстовый файл» (в файле хранится текст) 1) Переписать в другой текстовый файл самую Дан текстовый файл. Используя стек, сформировать новый текстовый файл, каждая строка которого содержит символы Дан текстовый файл. Используя стек, сформировать новый текстовый файл, каждая строка которого содержит символы Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи | |||||
Обработка текстовой информации
hw_wired 28.01.2025
Введение в обработку текстовой информации
В современном мире обработка текстовой информации играет фундаментальную роль в различных сферах человеческой деятельности. Текстовые редакторы стали. . .
|
Обработка графической информации
hw_wired 28.01.2025
Введение в компьютерную графику
Компьютерная графика стала неотъемлемой частью современного цифрового мира, пройдя впечатляющий путь развития от простейших черно-белых изображений до сложных. . .
|
Python в Алгоритмике: Решение задач
hw_wired 28.01.2025
Введение в Python и Алгоритмику
В современном мире программирование стало неотъемлемой частью образования и профессионального развития. Python зарекомендовал себя как один из самых популярных и. . .
|
Компьютер как универсальное устройство для работы с информацией
hw_wired 28.01.2025
Введение в устройство компьютера
Компьютер представляет собой универсальное электронное устройство, предназначенное для автоматической обработки информации. В современном мире компьютер стал. . .
|
Информация и информационные процессы
hw_wired 28.01.2025
Понятие информации и ее виды
В современном мире информация является одним из фундаментальных понятий, пронизывающих все сферы человеческой деятельности. Под информацией понимают любые сведения об. . .
|
Алгоритмика
hw_wired 28.01.2025
Введение: Основы алгоритмики и её роль в информатике
В современном мире программирование и алгоритмическое мышление стали неотъемлемой частью образования и профессиональной деятельности. . . .
|
Информационное моделирование
hw_wired 28.01.2025
Введение в информационное моделирование
В современном мире информационное моделирование стало неотъемлемой частью научной, образовательной и профессиональной деятельности. Это мощный инструмент. . .
|
Объекты и их имена
hw_wired 28.01.2025
Введение: Основы объектного подхода и их роль в информатике
В современном мире информационных технологий объектный подход стал фундаментальным принципом организации и обработки информации. Этот. . .
|
Элементы алгоритмизации
hw_wired 28.01.2025
Основы алгоритмизации
В современном мире алгоритмы играют фундаментальную роль в развитии информационных технологий и программирования. Понимание основ алгоритмизации является ключевым элементом в. . .
|
Человек и информация
hw_wired 28.01.2025
Введение: роль информации в познании мира
В современном мире информация играет фундаментальную роль в процессе познания окружающей действительности. Она представляет собой совокупность сведений об. . .
|
Компьютер и информация
hw_wired 28.01.2025
Эволюция вычислительных машин
История развития вычислительной техники начинается задолго до появления первых электронных устройств. Человечество всегда стремилось упростить процесс вычислений и. . .
|
Информационные технологии
hw_wired 28.01.2025
Введение в современные технологии работы с информацией
В современном мире информационные технологии стали неотъемлемой частью практически всех сфер человеческой деятельности. Они существенно. . .
|