|
Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Программирование и базы данных » C/C++ - Чтение из бинарного файла формата GRD |
|
C/C++ - Чтение из бинарного файла формата GRD
|
Новый участник Сообщения: 3 |
Профиль | Отправить PM | Цитировать Здравствуйте, в моей программе мне нужно считать данные из GRD файла. Казалось бы все очень просто, данные в GRD файле расположены так: СССС, N_x, N_y, X_min, X_max, Y_min, Y_max, Z_min, Z_max, H[N_x][N_y]; Вот кусок кода. который должен считать эти данные с этого файла:
#include<conio.h> #include<iostream> using namespace std; #define N 944 int main(){ //ВЫДЕЛЕНИЕ ПАМЯТИ ПОД ДИНАМИЧЕСКИй МАССИВ double **H; H = (double**)calloc(sizeof(double*),N); for(i = 0; i<N; i++){ H[i] = (double*)calloc(sizeof(double),N); } //считываение с jrd файла int n = 4; char *C = (char*)calloc(sizeof(char),n); short int N_x, N_y; double X_min, X_max, Y_min, Y_max, Z_min, Z_max; FILE *fp; fp=fopen("H200.grd", "rb"); if((fp=fopen("H200.grd", "rb")) == NULL){ cout<<"Не удается открыть файл\n"; system("pause"); return 1; } fread(C, sizeof(char), 4, fp); for(i=0; i<4; i++) cout<<C[i]<<" , "; cout<<endl; fread(&N_x, sizeof(short int), 1, fp); cout << N_x << " , "; fread(&N_y, sizeof(short int), 1, fp); cout << N_y << endl; fread(&X_min, sizeof(double), 1, fp); cout <<"X_min = "<< X_min << endl; fread(&X_max, sizeof(double), 1, fp); cout <<"X_max = "<< X_max << endl; fread(&Y_min, sizeof(double), 1, fp); cout <<"Y_min = "<< Y_min << endl; fread(&Y_max, sizeof(double), 1, fp); cout <<"Y_max = "<< Y_max << endl; fread(&Z_min, sizeof(double), 1, fp); cout <<"Z_min = "<< Z_min << endl; fread(&Z_max, sizeof(double), 1, fp); cout <<"Z_max = "<< Z_max << endl; fclose(fp); но проблема в том, что он даже не может открыть этот файл, не может его найти, даже когда я к нему полный путь указываю, ошибка выскакивает на этапе отладки программы если не писать условие"if((fp=fopen("H200.grd", "rb")) == NULL){ cout<<"Не удается открыть файл\n"; system("pause"); return 1; }" то получается ошибка "Библиотека времени выполнения Microsoft Visual Studio C обнаружила неустранимую ошибку в Курсовая_работа.exe." файл лежит в папке с самой программой .exe в чем ошибка? помогите разобраться... |
|
Отправлено: 17:52, 19-05-2012 |
Разный Сообщения: 1294
|
Профиль | Отправить PM | Цитировать дело в том, что при запуске из-под VS рабочим каталогом считается тот, где лежат файлы .cpp, а не тот где лежит exe, переложите файл H200.grd
|
Отправлено: 01:40, 20-05-2012 | #2 |
Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети. Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля. |
Ветеран Сообщения: 5624
|
Профиль | Отправить PM | Цитировать Цитата ferget:
|
|
------- Отправлено: 08:43, 20-05-2012 | #3 |
Новый участник Сообщения: 3
|
Профиль | Отправить PM | Цитировать спасибо всем большое! все заработало))))
|
Отправлено: 19:45, 20-05-2012 | #4 |
Участник сейчас на форуме | Участник вне форума | Автор темы | Сообщение прикреплено |
| |||||
Название темы | Автор | Информация о форуме | Ответов | Последнее сообщение | |
[решено] Построчное чтение файла в Bash | FATruden | Программирование в *nix | 11 | 19-05-2017 00:44 | |
.NET - [решено] vb.net чтение конкретной строки файла | RUVATA | Программирование и базы данных | 7 | 19-08-2010 10:21 | |
Разное - Преобразование одного формата файла в другой | Evgesha_572 | Программирование и базы данных | 3 | 04-02-2009 14:57 | |
[решено] Чтение-запись битого файла | vit777 | Видео и аудио: обработка и кодирование | 3 | 19-12-2007 09:45 | |
Shell. Чтение текстового файла по строкам. | Delphin911 | Общий по Linux | 11 | 07-04-2005 17:58 |
|